powerpc/64s: Fix section mismatch warnings from setup_rfi_flush()
Michael Ellerman
patch-notifications at ellerman.id.au
Thu Apr 12 00:49:29 AEST 2018
On Thu, 2018-04-05 at 12:49:13 UTC, Michael Ellerman wrote:
> The recent LPM changes to setup_rfi_flush() are causing some section
> mismatch warnings because we removed the __init annotation on
> setup_rfi_flush():
>
> The function setup_rfi_flush() references
> the function __init ppc64_bolted_size().
> the function __init memblock_alloc_base().
>
> The references are actually in init_fallback_flush(), but that is
> inlined into setup_rfi_flush().
>
> These references are safe because:
> - only pseries calls setup_rfi_flush() at runtime
> - pseries always passes L1D_FLUSH_FALLBACK at boot
> - so the fallback flush area will always be allocated
> - so the check in init_fallback_flush() will always return early:
> /* Only allocate the fallback flush area once (at boot time). */
> if (l1d_flush_fallback_area)
> return;
>
> - and therefore we won't actually call the freed init routines.
>
> We should rework the code to make it safer by default rather than
> relying on the above, but for now as a quick-fix just add a __ref
> annotation to squash the warning.
>
> Fixes: abf110f3e1ce ("powerpc/rfi-flush: Make it possible to call setup_rfi_flush() again")
> Signed-off-by: Michael Ellerman <mpe at ellerman.id.au>
Applied to powerpc fixes.
https://git.kernel.org/powerpc/c/501a78cbc17c329fabf8e9750a1e9a
cheers
More information about the Linuxppc-dev
mailing list