Hi, On Wed, Feb 19, 2025 at 10:53:41AM -0600, Moger, Babu wrote: > Hi Dave, > > On 2/19/25 07:28, Dave Martin wrote: > > Hi, > > > > On Wed, Jan 22, 2025 at 02:20:09PM -0600, Babu Moger wrote: > >> resctrl_late_init() has the __init attribute, but some of the functions > >> called from it do not have the __init attribute. > >> > >> Add the __init attribute to all the functions in the call sequences to > >> maintain consistency throughout. > > > > (BTW, did you just find these cases by inspection, or were you getting > > build warnings? > > > > Even with CONFIG_DEBUG_SECTION_MISMATCH=y, I struggle to get build > > warnings about section mismatches on inlined functions. Even building > > with -fno-inline doesn't flag them all up (though I don't think this > > suppresses all inlining). > > > > If you have a way of tracking these cases down automatically, I'd be > > interested to know so that I can apply it elsewhere.) > > It is mostly by code inspection at this point. > > You can refer to this commit [1]. > > We used to see section mismatch warnings when non-init functions call > __init functions. > > MODPOST Module.symvers > WARNING: modpost: vmlinux: section mismatch in reference: > rdt_get_mon_l3_config+0x2b5 (section: .text) -> rdt_cpu_has (section: > .init.text) > WARNING: modpost: vmlinux: section mismatch in reference: > rdt_get_mon_l3_config+0x408 (section: .text) -> rdt_cpu_has (section: > .init.text) > > > 1. > https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?h=v6.14-rc3&id=bd334c86b5d70e5d1c6169991802e62c828d6f38 Right. No problem with this patch, but I'll bear in mind for the future that CONFIG_DEBUG_SECTION_MISMATCH has limitations... Cheers ---Dave