Message ID | 20240822-imx7d-mark-imx7d_enet_init-as-init-v1-1-8dfadee3bed4@kernel.org (mailing list archive) |
---|---|
State | In Next, archived |
Headers | show |
Series | ARM: imx: Annotate imx7d_enet_init() as __init | expand |
> Subject: [PATCH] ARM: imx: Annotate imx7d_enet_init() as __init > > After a recent LLVM change [1] that deduces __cold on functions that > only call cold code (such as __init functions), there is a section > mismatch warning from imx7d_enet_init(), which got moved > to .text.unlikely. as a result of that optimization: > > WARNING: modpost: vmlinux: section mismatch in reference: > imx7d_enet_init+0x20 (section: .text.unlikely.) -> imx7d_enet_clk_sel > (section: .init.text) > > Drop the inline keyword (which does not guarantee inlining) and > replace it with __init, as imx7d_enet_init() is only called from __init > code, which clears up the warning. > > Link: > Signed-off-by: Nathan Chancellor <nathan@kernel.org> Reviewed-by: Peng Fan <peng.fan@nxp.com>
On Thu, Aug 22, 2024 at 05:05:17PM -0700, Nathan Chancellor wrote: > After a recent LLVM change [1] that deduces __cold on functions that > only call cold code (such as __init functions), there is a section > mismatch warning from imx7d_enet_init(), which got moved to > .text.unlikely. as a result of that optimization: > > WARNING: modpost: vmlinux: section mismatch in reference: imx7d_enet_init+0x20 (section: .text.unlikely.) -> imx7d_enet_clk_sel (section: .init.text) > > Drop the inline keyword (which does not guarantee inlining) and replace > it with __init, as imx7d_enet_init() is only called from __init code, > which clears up the warning. > > Link: https://github.com/llvm/llvm-project/commit/6b11573b8c5e3d36beee099dbe7347c2a007bf53 [1] > Signed-off-by: Nathan Chancellor <nathan@kernel.org> Applied, thanks!
diff --git a/arch/arm/mach-imx/mach-imx7d.c b/arch/arm/mach-imx/mach-imx7d.c index 9587885fb1ac..87632ae0201c 100644 --- a/arch/arm/mach-imx/mach-imx7d.c +++ b/arch/arm/mach-imx/mach-imx7d.c @@ -48,7 +48,7 @@ static void __init imx7d_enet_clk_sel(void) } } -static inline void imx7d_enet_init(void) +static void __init imx7d_enet_init(void) { imx7d_enet_phy_init(); imx7d_enet_clk_sel();
After a recent LLVM change [1] that deduces __cold on functions that only call cold code (such as __init functions), there is a section mismatch warning from imx7d_enet_init(), which got moved to .text.unlikely. as a result of that optimization: WARNING: modpost: vmlinux: section mismatch in reference: imx7d_enet_init+0x20 (section: .text.unlikely.) -> imx7d_enet_clk_sel (section: .init.text) Drop the inline keyword (which does not guarantee inlining) and replace it with __init, as imx7d_enet_init() is only called from __init code, which clears up the warning. Link: https://github.com/llvm/llvm-project/commit/6b11573b8c5e3d36beee099dbe7347c2a007bf53 [1] Signed-off-by: Nathan Chancellor <nathan@kernel.org> --- arch/arm/mach-imx/mach-imx7d.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) --- base-commit: 47ac09b91befbb6a235ab620c32af719f8208399 change-id: 20240822-imx7d-mark-imx7d_enet_init-as-init-03d0c38e3118 Best regards,