• Nathan Chancellor's avatar
    cpuidle: pseries: Mark pseries_idle_proble() as __init · d04691d3
    Nathan Chancellor authored
    After commit 7cbd631d4dec ("cpuidle: pseries: Fixup CEDE0 latency only
    for POWER10 onwards"), pseries_idle_probe() is no longer inlined when
    compiling with clang, which causes a modpost warning:
    
    WARNING: modpost: vmlinux.o(.text+0xc86a54): Section mismatch in
    reference from the function pseries_idle_probe() to the function
    .init.text:fixup_cede0_latency()
    The function pseries_idle_probe() references
    the function __init fixup_cede0_latency().
    This is often because pseries_idle_probe lacks a __init
    annotation or the annotation of fixup_cede0_latency is wrong.
    
    pseries_idle_probe() is a non-init function, which calls
    fixup_cede0_latency(), which is an init function, explaining the
    mismatch. pseries_idle_probe() is only called from
    pseries_processor_idle_init(), which is an init function, so mark
    pseries_idle_probe() as __init so there is no more warning.
    
    Fixes: 054e44ba ("cpuidle: pseries: Add function to parse extended CEDE records")
    Signed-off-by: default avatarNathan Chancellor <nathan@kernel.org>
    Signed-off-by: default avatarMichael Ellerman <mpe@ellerman.id.au>
    Link: https://lore.kernel.org/r/20210803211547.1093820-1-nathan@kernel.org
    d04691d3
cpuidle-pseries.c 12.3 KB