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