[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <0d0a4803-3e68-4512-b8d8-efd96e8d66f4@amd.com>
Date: Fri, 14 Mar 2025 14:19:57 +0530
From: K Prateek Nayak <kprateek.nayak@....com>
To: Chengming Zhou <chengming.zhou@...ux.dev>, Aaron Lu
<ziqianlu@...edance.com>, Valentin Schneider <vschneid@...hat.com>, Ben
Segall <bsegall@...gle.com>, Peter Zijlstra <peterz@...radead.org>, Josh Don
<joshdon@...gle.com>, Ingo Molnar <mingo@...hat.com>, Vincent Guittot
<vincent.guittot@...aro.org>
CC: <linux-kernel@...r.kernel.org>, Juri Lelli <juri.lelli@...hat.com>,
Dietmar Eggemann <dietmar.eggemann@....com>, Steven Rostedt
<rostedt@...dmis.org>, Mel Gorman <mgorman@...e.de>, Chuyi Zhou
<zhouchuyi@...edance.com>
Subject: Re: [RFC PATCH 2/7] sched/fair: Handle throttle path for task based
throttle
On 3/14/2025 2:09 PM, Chengming Zhou wrote:
> On 2025/3/13 15:21, Aaron Lu wrote:
>> From: Valentin Schneider <vschneid@...hat.com>
>>
>> Once a cfs_rq gets throttled, for all tasks belonging to this cfs_rq,
>> add a task work to them so that when those tasks return to user, the
>> actual throttle/dequeue can happen.
>>
>> Note that since the throttle/dequeue always happens on a task basis when
>> it returns to user, it's no longer necessary for check_cfs_rq_runtime()
>> to return a value and pick_task_fair() acts differently according to that
>> return value, so check_cfs_rq_runtime() is changed to not return a
>> value.
>
> Previously with the per-cfs_rq throttling, we use update_curr() -> put() path
> to throttle the cfs_rq and dequeue it from the cfs_rq tree.
>
> Now with your per-task throttling, maybe things can become simpler. That we
> can just throttle_cfs_rq() (cfs_rq subtree) when curr accouting to mark these
> throttled.
>
> Then then if we pick a task from a throttled cfs_rq subtree, we can setup task work
> for it, so we don't botter with the delayed_dequeue task case that Prateek mentioned.
+1
That seems like a good idea with per-task approach.
>
> WDYT?
>
> Thanks.
--
Thanks and Regards,
Prateek
Powered by blists - more mailing lists