On 01.03.21 23:18, Oscar Salvador wrote:
On Mon, Mar 01, 2021 at 12:47:49PM +0100, David Hildenbrand wrote:
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.
It might be good to point out that we need __meminit instead of __init
because microblaze platform does not define CONFIG_ARCH_KEEP_MEMBLOCK,
and __init_memblock fallsback to that.
(I had to go and look as I was puzzled :-) )
Reviewed-by: Oscar Salvador <osalvador@xxxxxxx>
Thanks!
Whoever feels like picking this up (@Andrew?) can you add
"We need __meminit because __init_memblock defaults to that without
CONFIG_ARCH_KEEP_MEMBLOCK" and __init_memblock is not used outside
memblock code.
--
Thanks,
David / dhildenb