[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <814a7bca-c5c7-446f-a67a-c09dab397f9b@amd.com>
Date: Mon, 19 Jan 2026 12:10:57 +0530
From: K Prateek Nayak <kprateek.nayak@....com>
To: Zecheng Li <zli94@...u.edu>, Ingo Molnar <mingo@...hat.com>, Peter
Zijlstra <peterz@...radead.org>, Juri Lelli <juri.lelli@...hat.com>, Vincent
Guittot <vincent.guittot@...aro.org>
CC: Dietmar Eggemann <dietmar.eggemann@....com>, Steven Rostedt
<rostedt@...dmis.org>, Ben Segall <bsegall@...gle.com>, Mel Gorman
<mgorman@...e.de>, Valentin Schneider <vschneid@...hat.com>, Rik van Riel
<riel@...riel.com>, Chris Mason <clm@...com>, Madadi Vineeth Reddy
<vineethr@...ux.ibm.com>, Xu Liu <xliuprof@...gle.com>, Blake Jones
<blakejones@...gle.com>, Josh Don <joshdon@...gle.com>, Nilay Vaish
<nilayvaish@...gle.com>, <linux-kernel@...r.kernel.org>, Zecheng Li
<zecheng@...gle.com>
Subject: Re: [PATCH v7 1/3] sched/fair: Co-locate cfs_rq and sched_entity in
cfs_tg_state
Hello Zecheng,
On 1/18/2026 9:04 AM, Zecheng Li wrote:
> @@ -13617,10 +13617,11 @@ void free_fair_sched_group(struct task_group *tg)
> int i;
>
> for_each_possible_cpu(i) {
> - if (tg->cfs_rq)
> - kfree(tg->cfs_rq[i]);
> - if (tg->se)
> - kfree(tg->se[i]);
> + if (tg->cfs_rq && tg->cfs_rq[i]) {
nit. Since the cfs_tg_state uses __no_randomize_layout now and, "cfs_rq"
is the first member, you can just do kfree(tg->cfs_rq[i]) since it is
the beginning of cfs_tg_state too.
This is how kfree() on tg->se[i] would have freed the entire
"sched_entity_stats" previously.
I know this is a transient change since later you switch to using
free_percpu() but it would still be nice to have a simplified hunk here.
> + struct cfs_tg_state *state =
> + container_of(tg->cfs_rq[i], struct cfs_tg_state, cfs_rq);
> + kfree(state);
> + }
> }
>
> kfree(tg->cfs_rq);
--
Thanks and Regards,
Prateek
Powered by blists - more mailing lists