From: Steven King Date: Thu, 12 Jun 2014 03:01:10 +0000 (-0700) Subject: m68knommu: Correct page_to_phys when PAGE_OFFSET is non-zero. X-Git-Tag: firefly_0821_release~176^2~3486^2~1 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=817f72d680828bb848099adf69fd35c14ff2e182;p=firefly-linux-kernel-4.4.55.git m68knommu: Correct page_to_phys when PAGE_OFFSET is non-zero. The definition of page_to_phys for nommu produces an incorrect value when PAGE_OFFSET is non-zero. The nommu version of page_to_pfn works correctly for non-zero PAGE_OFFSET, so use that instead. Signed-off-by: Steven King Signed-off-by: Greg Ungerer --- diff --git a/arch/m68k/include/asm/virtconvert.h b/arch/m68k/include/asm/virtconvert.h index f35229b8651d..b8a82fb1cef8 100644 --- a/arch/m68k/include/asm/virtconvert.h +++ b/arch/m68k/include/asm/virtconvert.h @@ -26,16 +26,12 @@ static inline void *phys_to_virt(unsigned long address) } /* Permanent address of a page. */ -#ifdef CONFIG_MMU -#ifdef CONFIG_SINGLE_MEMORY_CHUNK +#if defined(CONFIG_MMU) && defined(CONFIG_SINGLE_MEMORY_CHUNK) #define page_to_phys(page) \ __pa(PAGE_OFFSET + (((page) - pg_data_map[0].node_mem_map) << PAGE_SHIFT)) #else #define page_to_phys(page) (page_to_pfn(page) << PAGE_SHIFT) #endif -#else -#define page_to_phys(page) (((page) - mem_map) << PAGE_SHIFT) -#endif /* * IO bus memory addresses are 1:1 with the physical address,