• Roland Dreier's avatar
    [PATCH] ppc: make phys_mem_access_prot() work with pfns instead of addresses · 8b150478
    Roland Dreier authored
    Change the phys_mem_access_prot() function to take a pfn instead of an
    address.  This allows mmap64() to work on /dev/mem for addresses above 4G
    on 32-bit architectures.  We start with a pfn in mmap_mem(), so there's no
    need to convert to an address; in fact, it's actively bad, since the
    conversion can overflow when the address is above 4G.
    
    Similarly fix the ppc32 page_is_ram() function to avoid a conversion to an
    address by directly comparing to max_pfn.  Working with max_pfn instead of
    high_memory fixes page_is_ram() to give the right answer for highmem pages.
    Signed-off-by: default avatarRoland Dreier <rolandd@cisco.com>
    Cc: Anton Blanchard <anton@samba.org>
    Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
    Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
    Signed-off-by: default avatarPaul Mackerras <paulus@samba.org>
    8b150478
pgtable.h 18.3 KB