[PATCH] Add pgprot_noncached() to UIO mmap code

From: Hans J. Koch
Date: Fri Mar 14 2008 - 06:29:17 EST


From: Jean-Samuel Chenard <jsamch@xxxxxxxxx>
To: Greg KH <greg@xxxxxxxxx>
Cc: Hans J Koch <hjk@xxxxxxxxxxxxx>, linux-kernel@xxxxxxxxxxxxxxx,
Juergen Beisert <juergen127@xxxxxxxxxxxxxx>
Date: Fri, 14 Mar 2008 11:19:49 +0100
Subject: Add pgprot_noncached() to UIO mmap code

Mapping of physical memory in UIO needs pgprot_noncached() to ensure
that IO memory is not cached. Without pgprot_noncached(), it (accidentally)
works on x86 and arm, but fails on PPC.

Signed-off-by: Jean-Samuel Chenard <jsamch@xxxxxxxxx>
Signed-off-by: Hans J Koch <hjk@xxxxxxxxxxxxx>

---
drivers/uio/uio.c | 2 ++
1 file changed, 2 insertions(+)

Index: linux-2.6.25-rc/drivers/uio/uio.c
===================================================================
--- linux-2.6.25-rc.orig/drivers/uio/uio.c 2008-03-14 11:00:59.000000000 +0100
+++ linux-2.6.25-rc/drivers/uio/uio.c 2008-03-14 11:03:13.000000000 +0100
@@ -470,6 +470,8 @@

vma->vm_flags |= VM_IO | VM_RESERVED;

+ vma->vm_page_prot = pgprot_noncached(vma->vm_page_prot);
+
return remap_pfn_range(vma,
vma->vm_start,
idev->info->mem[mi].addr >> PAGE_SHIFT,
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/