From: "Mike Rapoport (IBM)" <rppt@kernel.org>
sh never initializes max_mapnr which is used by the generic
implementation of pfn_valid().
Initialize max_mapnr with set_max_mapnr() in sh::paging_init().
Reported-by: Guenter Roeck <linux@roeck-us.net>
Fixes: e5080a967785 ("mm, arch: add generic implementation of pfn_valid() for FLATMEM")
Signed-off-by: Mike Rapoport (IBM) <rppt@kernel.org>
---
arch/sh/mm/init.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/arch/sh/mm/init.c b/arch/sh/mm/init.c
index 506784702430..bf1b54055316 100644
--- a/arch/sh/mm/init.c
+++ b/arch/sh/mm/init.c
@@ -301,6 +301,7 @@ void __init paging_init(void)
*/
max_low_pfn = max_pfn = memblock_end_of_DRAM() >> PAGE_SHIFT;
min_low_pfn = __MEMORY_START >> PAGE_SHIFT;
+ set_max_mapnr(max_low_pfn - min_low_pfn);
nodes_clear(node_online_map);
--
2.35.1
On 14.02.23 15:07, Mike Rapoport wrote:
> From: "Mike Rapoport (IBM)" <rppt@kernel.org>
>
> sh never initializes max_mapnr which is used by the generic
> implementation of pfn_valid().
>
> Initialize max_mapnr with set_max_mapnr() in sh::paging_init().
>
> Reported-by: Guenter Roeck <linux@roeck-us.net>
> Fixes: e5080a967785 ("mm, arch: add generic implementation of pfn_valid() for FLATMEM")
> Signed-off-by: Mike Rapoport (IBM) <rppt@kernel.org>
> ---
> arch/sh/mm/init.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/arch/sh/mm/init.c b/arch/sh/mm/init.c
> index 506784702430..bf1b54055316 100644
> --- a/arch/sh/mm/init.c
> +++ b/arch/sh/mm/init.c
> @@ -301,6 +301,7 @@ void __init paging_init(void)
> */
> max_low_pfn = max_pfn = memblock_end_of_DRAM() >> PAGE_SHIFT;
> min_low_pfn = __MEMORY_START >> PAGE_SHIFT;
> + set_max_mapnr(max_low_pfn - min_low_pfn);
>
> nodes_clear(node_online_map);
>
Reviewed-by: David Hildenbrand <david@redhat.com>
--
Thanks,
David / dhildenb
On Tue, 2023-02-14 at 16:07 +0200, Mike Rapoport wrote:
> From: "Mike Rapoport (IBM)" <rppt@kernel.org>
>
> sh never initializes max_mapnr which is used by the generic
> implementation of pfn_valid().
>
> Initialize max_mapnr with set_max_mapnr() in sh::paging_init().
>
> Reported-by: Guenter Roeck <linux@roeck-us.net>
> Fixes: e5080a967785 ("mm, arch: add generic implementation of pfn_valid() for FLATMEM")
> Signed-off-by: Mike Rapoport (IBM) <rppt@kernel.org>
> ---
> arch/sh/mm/init.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/arch/sh/mm/init.c b/arch/sh/mm/init.c
> index 506784702430..bf1b54055316 100644
> --- a/arch/sh/mm/init.c
> +++ b/arch/sh/mm/init.c
> @@ -301,6 +301,7 @@ void __init paging_init(void)
> */
> max_low_pfn = max_pfn = memblock_end_of_DRAM() >> PAGE_SHIFT;
> min_low_pfn = __MEMORY_START >> PAGE_SHIFT;
> + set_max_mapnr(max_low_pfn - min_low_pfn);
>
> nodes_clear(node_online_map);
>
Acked-by: John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
--
.''`. John Paul Adrian Glaubitz
: :' : Debian Developer
`. `' Physicist
`- GPG: 62FF 8A75 84E0 2956 9546 0006 7426 3B37 F5B5 F913
© 2016 - 2026 Red Hat, Inc.