Le 26/08/2025 à 10:01, Peter Zijlstra a écrit :
diff --git a/include/linux/sched/topology.h b/include/linux/sched/topology.h index 602508130c8a..d75fbb7d9667 100644 --- a/include/linux/sched/topology.h +++ b/include/linux/sched/topology.h @@ -37,7 +37,13 @@ static inline int cpu_smt_flags(void) { return SD_SHARE_CPUCAPACITY | SD_SHARE_LLC; } -#endif + +static const __maybe_unused +struct cpumask *tl_smt_mask(struct sched_domain_topology_level *tl, int cpu) +{ + return cpu_smt_mask(cpu); +} +#endif /* CONFIG_SCHED_SMT */Problem with that __maybe_unused is that you forgot inline. static inline const struct cpumask *tl_smt_mask(struct sched_domain_topology_level *tl, int cpu) { return cpu_smt_mask(cpu); } seems to make it happy.
But the function is referenced by SDTL_INIT() macro so there is no real point in declaring it inline. Would be cleaner to have it defined in a C file.
Christophe
