[PATCH] powerpc/64s: Fix early_init_mmu section mismatch
Christian Zigotzky
chzigotzky at xenosoft.de
Mon May 18 17:05:11 AEST 2020
OK, thanks.
> On 18. May 2020, at 04:40, Michael Ellerman <mpe at ellerman.id.au> wrote:
>
> Christian Zigotzky <chzigotzky at xenosoft.de> writes:
>> Hi All,
>>
>> This patch wasn't included in the PowerPC fixes 5.7-4. Please add it.
>
> It's not an important bug. I'll take the patch for v5.8
>
> cheers
>
>>> On 29 April 2020 at 09:02 am, Nicholas Piggin wrote:
>>> Christian reports:
>>>
>>> MODPOST vmlinux.o
>>> WARNING: modpost: vmlinux.o(.text.unlikely+0x1a0): Section mismatch in
>>> reference from the function .early_init_mmu() to the function
>>> .init.text:.radix__early_init_mmu()
>>> The function .early_init_mmu() references
>>> the function __init .radix__early_init_mmu().
>>> This is often because .early_init_mmu lacks a __init
>>> annotation or the annotation of .radix__early_init_mmu is wrong.
>>>
>>> WARNING: modpost: vmlinux.o(.text.unlikely+0x1ac): Section mismatch in
>>> reference from the function .early_init_mmu() to the function
>>> .init.text:.hash__early_init_mmu()
>>> The function .early_init_mmu() references
>>> the function __init .hash__early_init_mmu().
>>> This is often because .early_init_mmu lacks a __init
>>> annotation or the annotation of .hash__early_init_mmu is wrong.
>>>
>>> The compiler is uninlining early_init_mmu and not putting it in an init
>>> section because there is no annotation. Add it.
>>>
>>> Reported-by: Christian Zigotzky <chzigotzky at xenosoft.de>
>>> Tested-by: Christian Zigotzky <chzigotzky at xenosoft.de>
>>> Signed-off-by: Nicholas Piggin <npiggin at gmail.com>
>>> ---
>>> arch/powerpc/include/asm/book3s/64/mmu.h | 2 +-
>>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>>
>>> diff --git a/arch/powerpc/include/asm/book3s/64/mmu.h b/arch/powerpc/include/asm/book3s/64/mmu.h
>>> index bb3deb76c951..3ffe5f967483 100644
>>> --- a/arch/powerpc/include/asm/book3s/64/mmu.h
>>> +++ b/arch/powerpc/include/asm/book3s/64/mmu.h
>>> @@ -208,7 +208,7 @@ void hash__early_init_devtree(void);
>>> void radix__early_init_devtree(void);
>>> extern void hash__early_init_mmu(void);
>>> extern void radix__early_init_mmu(void);
>>> -static inline void early_init_mmu(void)
>>> +static inline void __init early_init_mmu(void)
>>> {
>>> if (radix_enabled())
>>> return radix__early_init_mmu();
More information about the Linuxppc-dev
mailing list