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 <m...@ellerman.id.au>

Applied to powerpc fixes.



Reply via email to