From: K Prateek Nayak <kprateek.nayak@amd.com>
To: Peter Zijlstra <peterz@infradead.org>
Cc: Adam Li <adamli@os.amperecomputing.com>, <mingo@redhat.com>,
<juri.lelli@redhat.com>, <vincent.guittot@linaro.org>,
<dietmar.eggemann@arm.com>, <rostedt@goodmis.org>,
<bsegall@google.com>, <mgorman@suse.de>, <vschneid@redhat.com>,
<linux-kernel@vger.kernel.org>, <patches@amperecomputing.com>,
<cl@linux.com>, <christian.loehle@arm.com>,
<vineethr@linux.ibm.com>
Subject: Re: [PATCH v2 1/3] sched/fair: Fix warning if NEXT_BUDDY enabled
Date: Tue, 3 Dec 2024 22:18:40 +0530 [thread overview]
Message-ID: <d1047c7a-4e94-4ba4-a9a2-d2ed6778be8f@amd.com> (raw)
In-Reply-To: <20241203160514.GI35539@noisy.programming.kicks-ass.net>
Hello Peter,
On 12/3/2024 9:35 PM, Peter Zijlstra wrote:
> On Thu, Nov 28, 2024 at 12:59:54PM +0530, K Prateek Nayak wrote:
>
>> Can you please try the following diff instead of the first two patches
>> and see if you still hit these warnings, stalls, and pick_eevdf()
>> returning NULL?
>>
>> diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c
>> index ff7cae9274c5..61e74eb5af22 100644
>> --- a/kernel/sched/fair.c
>> +++ b/kernel/sched/fair.c
>> @@ -5478,6 +5478,7 @@ dequeue_entity(struct cfs_rq *cfs_rq, struct sched_entity *se, int flags)
>> bool sleep = flags & DEQUEUE_SLEEP;
>> update_curr(cfs_rq);
>> + clear_buddies(cfs_rq, se);
>> if (flags & DEQUEUE_DELAYED) {
>> SCHED_WARN_ON(!se->sched_delayed);
>> @@ -5520,8 +5521,6 @@ dequeue_entity(struct cfs_rq *cfs_rq, struct sched_entity *se, int flags)
>> update_stats_dequeue_fair(cfs_rq, se, flags);
>> - clear_buddies(cfs_rq, se);
>> -
>> update_entity_lag(cfs_rq, se);
>> if (sched_feat(PLACE_REL_DEADLINE) && !sleep) {
>> se->deadline -= se->vruntime;
>> @@ -8767,7 +8766,7 @@ static void check_preempt_wakeup_fair(struct rq *rq, struct task_struct *p, int
>> if (unlikely(throttled_hierarchy(cfs_rq_of(pse))))
>> return;
>> - if (sched_feat(NEXT_BUDDY) && !(wake_flags & WF_FORK)) {
>> + if (sched_feat(NEXT_BUDDY) && !(wake_flags & WF_FORK) && !pse->sched_delayed) {
>> set_next_buddy(pse);
>> }
>
>
> Prateek, I've presumed your SoB on this change:
>
> https://git.kernel.org/pub/scm/linux/kernel/git/peterz/queue.git/commit/?h=sched/urgent&id=d1139307fe97ffefcf90212772f7516732a11034
No objections from my side! While at it, perhaps you can also squash in:
diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c
index 3ed4af8be76b..eadcd64c03e9 100644
--- a/kernel/sched/fair.c
+++ b/kernel/sched/fair.c
@@ -5519,8 +5519,6 @@ dequeue_entity(struct cfs_rq *cfs_rq, struct sched_entity *se, int flags)
if (sched_feat(DELAY_DEQUEUE) && delay &&
!entity_eligible(cfs_rq, se)) {
- if (cfs_rq->next == se)
- cfs_rq->next = NULL;
update_load_avg(cfs_rq, se, 0);
set_delayed(se);
return false;
--
Since we do a clear_buddy() upfront, we no longer need this special case
for delayed entities. Tested it on top of queue:sched/urgent with
hackbench and I didn't run into any problems / splats. Thank you.
>
> Holler if you want it modified.
>
> Thanks!
--
Thanks and Regards,
Prateek
next prev parent reply other threads:[~2024-12-03 16:48 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-11-27 5:56 [PATCH v2 0/3] sched/fair: Fix NEXT_BUDDY panic and warning Adam Li
2024-11-27 5:56 ` [PATCH v2 1/3] sched/fair: Fix warning if NEXT_BUDDY enabled Adam Li
2024-11-28 7:29 ` K Prateek Nayak
2024-11-29 3:21 ` Adam Li
2024-11-29 4:28 ` K Prateek Nayak
2024-11-29 7:40 ` Adam Li
2024-11-29 8:00 ` K Prateek Nayak
2024-11-29 9:55 ` Peter Zijlstra
2024-11-29 10:15 ` [PATCH] sched/fair: Untangle NEXT_BUDDY and pick_next_task() Peter Zijlstra
2024-11-29 10:18 ` Peter Zijlstra
2024-11-29 10:37 ` Adam Li
2024-11-29 11:45 ` Peter Zijlstra
2024-12-06 6:47 ` Adam Li
2024-12-09 11:00 ` [tip: sched/core] " tip-bot2 for Peter Zijlstra
2024-11-29 17:46 ` [PATCH v2 1/3] sched/fair: Fix warning if NEXT_BUDDY enabled K Prateek Nayak
2024-11-29 17:53 ` K Prateek Nayak
2024-12-03 16:05 ` Peter Zijlstra
2024-12-03 16:48 ` K Prateek Nayak [this message]
2024-12-09 11:00 ` [tip: sched/core] sched/fair: Fix NEXT_BUDDY tip-bot2 for K Prateek Nayak
2024-11-27 5:56 ` [PATCH v2 2/3] sched/fair: Fix panic if pick_eevdf() returns NULL Adam Li
2024-11-29 9:18 ` Peter Zijlstra
2024-11-27 5:56 ` [PATCH v2 3/3] sched/fair: Update comments regarding last and skip buddy Adam Li
2025-03-13 8:30 ` Madadi Vineeth Reddy
2025-03-14 2:53 ` Adam Li
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=d1047c7a-4e94-4ba4-a9a2-d2ed6778be8f@amd.com \
--to=kprateek.nayak@amd.com \
--cc=adamli@os.amperecomputing.com \
--cc=bsegall@google.com \
--cc=christian.loehle@arm.com \
--cc=cl@linux.com \
--cc=dietmar.eggemann@arm.com \
--cc=juri.lelli@redhat.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mgorman@suse.de \
--cc=mingo@redhat.com \
--cc=patches@amperecomputing.com \
--cc=peterz@infradead.org \
--cc=rostedt@goodmis.org \
--cc=vincent.guittot@linaro.org \
--cc=vineethr@linux.ibm.com \
--cc=vschneid@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®