From: "Mike Rapoport (IBM)" <rppt@kernel.org>
On m68k/nommu RAM does not necessarily start at 0x0 and when it does not
pfn_valid() uses a wrong offset into the memory map which causes silent
boot failures.
Define ARCH_PFN_OFFSET to make pfn_valid() use the correct offset.
Reported-by: Guenter Roeck <linux@roeck-us.net>
Fixes: d82f07f06cf8 ("m68k: use asm-generic/memory_model.h for both MMU and !MMU")
Signed-off-by: Mike Rapoport (IBM) <rppt@kernel.org>
---
arch/m68k/include/asm/page_no.h | 2 ++
1 file changed, 2 insertions(+)
diff --git a/arch/m68k/include/asm/page_no.h b/arch/m68k/include/asm/page_no.h
index 43ff6b109ebb..060e4c0e7605 100644
--- a/arch/m68k/include/asm/page_no.h
+++ b/arch/m68k/include/asm/page_no.h
@@ -28,6 +28,8 @@ extern unsigned long memory_end;
#define virt_addr_valid(kaddr) (((unsigned long)(kaddr) >= PAGE_OFFSET) && \
((unsigned long)(kaddr) < memory_end))
+#define ARCH_PFN_OFFSET PHYS_PFN(PAGE_OFFSET_RAW)
+
#endif /* __ASSEMBLY__ */
#endif /* _M68K_PAGE_NO_H */
--
2.35.1
On 14.02.23 15:07, Mike Rapoport wrote: > From: "Mike Rapoport (IBM)" <rppt@kernel.org> > > On m68k/nommu RAM does not necessarily start at 0x0 and when it does not > pfn_valid() uses a wrong offset into the memory map which causes silent > boot failures. > > Define ARCH_PFN_OFFSET to make pfn_valid() use the correct offset. > > Reported-by: Guenter Roeck <linux@roeck-us.net> > Fixes: d82f07f06cf8 ("m68k: use asm-generic/memory_model.h for both MMU and !MMU") > Signed-off-by: Mike Rapoport (IBM) <rppt@kernel.org> > --- Reviewed-by: David Hildenbrand <david@redhat.com> -- Thanks, David / dhildenb
On 15/2/23 00:07, Mike Rapoport wrote: > From: "Mike Rapoport (IBM)" <rppt@kernel.org> > > On m68k/nommu RAM does not necessarily start at 0x0 and when it does not > pfn_valid() uses a wrong offset into the memory map which causes silent > boot failures. > > Define ARCH_PFN_OFFSET to make pfn_valid() use the correct offset. > > Reported-by: Guenter Roeck <linux@roeck-us.net> > Fixes: d82f07f06cf8 ("m68k: use asm-generic/memory_model.h for both MMU and !MMU") > Signed-off-by: Mike Rapoport (IBM) <rppt@kernel.org> Acked-by: Greg Ungerer <gerg@linux-m68k.org> > --- > arch/m68k/include/asm/page_no.h | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/arch/m68k/include/asm/page_no.h b/arch/m68k/include/asm/page_no.h > index 43ff6b109ebb..060e4c0e7605 100644 > --- a/arch/m68k/include/asm/page_no.h > +++ b/arch/m68k/include/asm/page_no.h > @@ -28,6 +28,8 @@ extern unsigned long memory_end; > #define virt_addr_valid(kaddr) (((unsigned long)(kaddr) >= PAGE_OFFSET) && \ > ((unsigned long)(kaddr) < memory_end)) > > +#define ARCH_PFN_OFFSET PHYS_PFN(PAGE_OFFSET_RAW) > + > #endif /* __ASSEMBLY__ */ > > #endif /* _M68K_PAGE_NO_H */
© 2016 - 2025 Red Hat, Inc.