From 9dc12e4ccd97c07d5c9ed9ea4a75a5e16bc3700e Mon Sep 17 00:00:00 2001 From: David Hildenbrand Date: Mon, 1 Mar 2021 12:47:49 +0100 Subject: microblaze: tag highmem_setup() with __meminit With commit a0cd7a7c4bc0 ("mm: simplify free_highmem_page() and free_reserved_page()") the kernel test robot complains about a warning: WARNING: modpost: vmlinux.o(.text.unlikely+0x23ac): Section mismatch in reference from the function highmem_setup() to the function .meminit.text:memblock_is_reserved() This has been broken ever since microblaze added highmem support, because memblock_is_reserved() was already tagged with "__init" back then - most probably the function always got inlined, so we never stumbled over it. We need __meminit because __init_memblock defaults to that without CONFIG_ARCH_KEEP_MEMBLOCK" and __init_memblock is not used outside memblock code. Reported-by: kernel test robot Fixes: 2f2f371f8907 ("microblaze: Highmem support") Cc: Andrew Morton Cc: Michal Simek Cc: Mike Rapoport Cc: Andrew Morton Cc: Thomas Gleixner Cc: Arvind Sankar Cc: Ira Weiny Cc: Randy Dunlap Cc: Oscar Salvador Cc: Anshuman Khandual Signed-off-by: David Hildenbrand Reviewed-by: Oscar Salvador Link: https://lore.kernel.org/r/20210301114749.47914-1-david@redhat.com Signed-off-by: Michal Simek --- arch/microblaze/mm/init.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'arch/microblaze/mm') diff --git a/arch/microblaze/mm/init.c b/arch/microblaze/mm/init.c index 181e48782e6c..05cf1fb3f5ff 100644 --- a/arch/microblaze/mm/init.c +++ b/arch/microblaze/mm/init.c @@ -52,7 +52,7 @@ static void __init highmem_init(void) pkmap_page_table = virt_to_kpte(PKMAP_BASE); } -static void highmem_setup(void) +static void __meminit highmem_setup(void) { unsigned long pfn; -- cgit