Skip to content

Commit d5fd042

Browse files
nathanchancebp3tk0v
authored andcommitted
x86/resctrl: Annotate get_mem_config() functions 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 __get_mem_config_intel(), which got moved to .text.unlikely. as a result of that optimization: WARNING: modpost: vmlinux: section mismatch in reference: \ __get_mem_config_intel+0x77 (section: .text.unlikely.) -> thread_throttle_mode_init (section: .init.text) Mark __get_mem_config_intel() as __init as well since it is only called from __init code, which clears up the warning. While __rdt_get_mem_config_amd() does not exhibit a warning because it does not call any __init code, it is a similar function that is only called from __init code like __get_mem_config_intel(), so mark it __init as well to keep the code symmetrical. CONFIG_SECTION_MISMATCH_WARN_ONLY=n would turn this into a fatal error. Fixes: 05b9341 ("x86/intel_rdt/mba: Add primary support for Memory Bandwidth Allocation (MBA)") Fixes: 4d05bf7 ("x86/resctrl: Introduce AMD QOS feature") Signed-off-by: Nathan Chancellor <[email protected]> Signed-off-by: Borislav Petkov (AMD) <[email protected]> Reviewed-by: Reinette Chatre <[email protected]> Cc: <[email protected]> Link: llvm/llvm-project@6b11573 [1] Link: https://lore.kernel.org/r/20240917-x86-restctrl-get_mem_config_intel-init-v3-1-10d521256284@kernel.org
1 parent 2b56484 commit d5fd042

File tree

1 file changed

+2
-2
lines changed
  • arch/x86/kernel/cpu/resctrl

1 file changed

+2
-2
lines changed

arch/x86/kernel/cpu/resctrl/core.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -207,7 +207,7 @@ static inline bool rdt_get_mb_table(struct rdt_resource *r)
207207
return false;
208208
}
209209

210-
static bool __get_mem_config_intel(struct rdt_resource *r)
210+
static __init bool __get_mem_config_intel(struct rdt_resource *r)
211211
{
212212
struct rdt_hw_resource *hw_res = resctrl_to_arch_res(r);
213213
union cpuid_0x10_3_eax eax;
@@ -241,7 +241,7 @@ static bool __get_mem_config_intel(struct rdt_resource *r)
241241
return true;
242242
}
243243

244-
static bool __rdt_get_mem_config_amd(struct rdt_resource *r)
244+
static __init bool __rdt_get_mem_config_amd(struct rdt_resource *r)
245245
{
246246
struct rdt_hw_resource *hw_res = resctrl_to_arch_res(r);
247247
u32 eax, ebx, ecx, edx, subleaf;

0 commit comments

Comments
 (0)