]> git.proxmox.com Git - mirror_ubuntu-hirsute-kernel.git/commit
cpuidle: pseries: Mark pseries_idle_proble() as __init
authorNathan Chancellor <nathan@kernel.org>
Tue, 3 Aug 2021 21:15:47 +0000 (14:15 -0700)
committerStefan Bader <stefan.bader@canonical.com>
Fri, 5 Nov 2021 09:17:57 +0000 (10:17 +0100)
commit0fb6d8db035ea411022a68e56564e95d57b74c1c
treec6f69095d33bfa668c12059866c1dc849ff3bd06
parentc946e0e748b6af4e21c6c7acd166a90ac03a530a
cpuidle: pseries: Mark pseries_idle_proble() as __init

BugLink: https://bugs.launchpad.net/bugs/1947781
[ Upstream commit d04691d373e75c83424b85c0e68e4a3f9370c10d ]

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: 054e44ba99ae ("cpuidle: pseries: Add function to parse extended CEDE records")
Signed-off-by: Nathan Chancellor <nathan@kernel.org>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/20210803211547.1093820-1-nathan@kernel.org
Signed-off-by: Sasha Levin <sashal@kernel.org>
Signed-off-by: Kamal Mostafa <kamal@canonical.com>
Signed-off-by: Kelsey Skunberg <kelsey.skunberg@canonical.com>
drivers/cpuidle/cpuidle-pseries.c