[PATCH] powerpc: IOMMU: don't ioremap null addresses
authorLinas Vepstas <linas@linas.org>
Fri, 4 Nov 2005 00:55:14 +0000 (18:55 -0600)
committerPaul Mackerras <paulus@samba.org>
Tue, 10 Jan 2006 04:30:31 +0000 (15:30 +1100)
240-ioremap-null-ptr-test.patch

Under highly unusual circumstances, a buggy driver will ask a null ptr
to be ioremapped, an operation that curently succeeds but leads to
later trouble.  Instead, refuse to remap the null pointer.

Signed-off-by: Linas Vepstas <linas@austin.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
(cherry picked from e71d9e598533c1889e7162f5f4647e5d378c102c commit)

arch/powerpc/mm/pgtable_64.c

index 2ffca63602c507ba1a201005e7441aee85ccfd3d..7b278d83739ee64614ab0651ecfbc959749a1204 100644 (file)
@@ -174,7 +174,7 @@ void __iomem * __ioremap(unsigned long addr, unsigned long size,
        pa = addr & PAGE_MASK;
        size = PAGE_ALIGN(addr + size) - pa;
 
-       if (size == 0)
+       if ((size == 0) || (pa == 0))
                return NULL;
 
        if (mem_init_done) {