hulk inclusion category: bugfix bugzilla: https://gitee.com/openeuler/kernel/issues/ICAOAT ----------------------------------------- The last_waking member of struct sched_info is only available when CONFIG_SCHED_INFO is enabled. Building the IFS subsystem without this configuration results in the compilation error: 'struct sched_info' has no member named 'last_waking' To resolve this, make CONFIG_CGROUP_IFS depend on CONFIG_SCHED_INFO in the Kconfig definition, ensuring both features are enabled together. Fixes: 4c89400decb9 ("interference: Add sched wakelat interference track support") Signed-off-by: Tengda Wu <wutengda2@huawei.com> --- init/Kconfig | 1 + kernel/sched/stats.h | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/init/Kconfig b/init/Kconfig index 704f63fe9e2d..f94a0c0894fc 100644 --- a/init/Kconfig +++ b/init/Kconfig @@ -1392,6 +1392,7 @@ config CGROUP_IFS default n depends on X86 || ARM64 select KERNFS + select SCHED_INFO select IRQ_TIME_ACCOUTING help This option will provide online low-overhead interference diff --git a/kernel/sched/stats.h b/kernel/sched/stats.h index 1b736b931247..ca031b9af93a 100644 --- a/kernel/sched/stats.h +++ b/kernel/sched/stats.h @@ -136,7 +136,7 @@ __schedstats_from_se(struct sched_entity *se) #define QOS_THROTTLED 2 #endif -#ifdef CONFIG_CGROUP_IFS +#if defined(CONFIG_CGROUP_IFS) && defined(CONFIG_SCHED_INFO) static inline void ifs_account_rundelay(struct task_struct *task, u64 delta) { /* -- 2.34.1