On 18 Oct. 2016 17:23, "Edward O'Callaghan" funfunctor@folklore1984.net wrote:
NACK,
I think you want to use 'iomap_create_wc()' instead to avoid aliasing.
Please explain what can alias here?
Dave.
Kind Regards, Edward.
On 10/18/2016 05:13 PM, Dave Airlie wrote:
From: Dave Airlie airlied@redhat.com
These functions are needed for gpu/ttm drivers to reserve the VRAM area as write combined. In a lot of places we don't ioremap but still need to insert pfn from it into a VMA using vm_insert_mixed, but a recent change in mixed insertion means we need to reserve VRAM as WC upfront, so we need these APIs exported.
Signed-off-by: Dave Airlie airlied@redhat.com
arch/x86/mm/pat.c | 2 ++ 1 file changed, 2 insertions(+)
diff --git a/arch/x86/mm/pat.c b/arch/x86/mm/pat.c index 170cc4f..5ce2fbb 100644 --- a/arch/x86/mm/pat.c +++ b/arch/x86/mm/pat.c @@ -719,6 +719,7 @@ out_free: out_err: return ret; } +EXPORT_SYMBOL(io_reserve_memtype);
/**
- io_free_memtype - Release a memory type mapping for a region of
memory
@@ -729,6 +730,7 @@ void io_free_memtype(resource_size_t start,
resource_size_t end)
{ free_memtype(start, end); } +EXPORT_SYMBOL(io_free_memtype);
pgprot_t phys_mem_access_prot(struct file *file, unsigned long pfn, unsigned long size, pgprot_t vma_prot)