All Virtuozzo development lists (kernel + QEMU)
 help / color / mirror / Atom feed
* [Devel] [PATCH vz10 04/32] sched/cpuacct: guard ve_root_tg() with CONFIG_CFS_CPULIMIT
@ 2026-08-21 16:36 Konstantin Khorenko
  2026-08-21 16:42 ` [Devel] [PATCH RHEL10 COMMIT] " Konstantin Khorenko
  0 siblings, 1 reply; 7+ messages in thread
From: Konstantin Khorenko @ 2026-08-21 16:36 UTC (permalink / raw)


ve_root_tg() has exactly two callers, tg_cpu_rate() and tg_nr_cpus(),
and both reference it only from inside #ifdef CONFIG_CFS_CPULIMIT: the
task_group fields they read, ::cpu_rate and ::nr_cpus, do not exist
without that option.  So with CONFIG_CFS_CPULIMIT=n the helper is not
used at all.  x86_64 defconfig is exactly that configuration - CONFIG_VE
defaults to y while CONFIG_CFS_BANDWIDTH, the only thing that selects
CONFIG_CFS_CPULIMIT, is off - and it sets CONFIG_WERROR=y as well, so
there the unused function is not a warning but a build failure:

  kernel/sched/cpuacct.c:373:27: error: 've_root_tg' defined but not
                                 used [-Werror=unused-function]

Compile ve_root_tg() under the same condition as its call sites.

Fixes: 095994c57b84 ("ve/sched/stat: Introduce functions to calculate vcpustat data")
Feature: sched: emulate virtual cpus for Containers
https://virtuozzo.atlassian.net/browse/VSTOR-134732
Signed-off-by: Konstantin Khorenko <khorenko@virtuozzo.com>
---
 kernel/sched/cpuacct.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/kernel/sched/cpuacct.c b/kernel/sched/cpuacct.c
index 01a2b2c3c5b7..6b0ed967316e 100644
--- a/kernel/sched/cpuacct.c
+++ b/kernel/sched/cpuacct.c
@@ -370,6 +370,7 @@ struct cgroup_subsys cpuacct_cgrp_subsys = {
 	.threaded       = true,
 };
 
+#ifdef CONFIG_CFS_CPULIMIT
 static struct task_group *ve_root_tg(struct task_group *tg) {
 	struct cgroup_subsys_state *css;
 
@@ -379,6 +380,7 @@ static struct task_group *ve_root_tg(struct task_group *tg) {
 	css = css_ve_root1(&tg->css);
 	return css ? css_tg(css) : NULL;
 }
+#endif
 
 static unsigned int tg_cpu_rate(struct task_group *tg)
 {
-- 
2.47.1


^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2026-08-21 16:48 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <20260625220832.2201873-1-eva.kurchatova@virtuozzo.com>
2026-08-20 16:57 ` [Devel] [PATCH RHEL10 COMMIT] sched/loadavg: fix build with CONFIG_CGROUP_SCHED=n Konstantin Khorenko
2026-08-20 16:57 ` [Devel] [PATCH RHEL10 COMMIT] sched/core: guard cpu_cgrp_subsys.depends_on with CONFIG_CGROUP_CPUACCT Konstantin Khorenko
2026-08-20 16:57 ` [Devel] [PATCH RHEL10 COMMIT] sched: move MAX_CPU_RATE out of CONFIG_CFS_CPULIMIT Konstantin Khorenko
2026-08-20 16:57 ` [Devel] [PATCH RHEL10 COMMIT] sched/cpuacct: guard ve_root_tg() with CONFIG_CFS_CPULIMIT Konstantin Khorenko
     [not found] ` <20260625220832.2201873-2-eva.kurchatova@virtuozzo.com>
2026-08-21 14:03   ` [Devel] [PATCH vz10 02/14] mm: fix VZ build errors with CONFIG_MEMCG=n Konstantin Khorenko
2026-08-21 16:48 ` [Devel] [PATCH vz10 01/14] sched: fix VZ build errors with CONFIG_CGROUP_SCHED=n Konstantin Khorenko
2026-08-21 16:36 [Devel] [PATCH vz10 04/32] sched/cpuacct: guard ve_root_tg() with CONFIG_CFS_CPULIMIT Konstantin Khorenko
2026-08-21 16:42 ` [Devel] [PATCH RHEL10 COMMIT] " Konstantin Khorenko

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.