[<prev] [next>] [day] [month] [year] [list]
Message-ID: <20240822134301.73a2a94a@canb.auug.org.au>
Date: Thu, 22 Aug 2024 13:43:01 +1000
From: Stephen Rothwell <sfr@...b.auug.org.au>
To: Tejun Heo <tj@...nel.org>, Thomas Gleixner <tglx@...utronix.de>, Ingo
Molnar <mingo@...hat.com>, "H. Peter Anvin" <hpa@...or.com>, Peter Zijlstra
<peterz@...radead.org>
Cc: Linux Kernel Mailing List <linux-kernel@...r.kernel.org>, Linux Next
Mailing List <linux-next@...r.kernel.org>
Subject: linux-next: manual merge of the sched-ext tree with the tip tree
Hi all,
Today's linux-next merge of the sched-ext tree got a semantic conflict in:
kernel/sched/ext.c
between commit:
863ccdbb918a ("sched: Allow sched_class::dequeue_task() to fail")
from the tip tree and commit:
f0e1a0643a59 ("sched_ext: Implement BPF extensible scheduler class")
from the sched-ext tree.
I fixed it up (I applied the following merge fix) and can carry the fix
as necessary. This is now fixed as far as linux-next is concerned, but
any non trivial conflicts should be mentioned to your upstream maintainer
when your tree is submitted for merging. You may also want to consider
cooperating with the maintainer of the conflicting tree to minimise any
particularly complex conflicts.
From: Stephen Rothwell <sfr@...b.auug.org.au>
Date: Thu, 22 Aug 2024 13:37:43 +1000
Subject: [PATCH] fix up for "sched_ext: Implement BPF extensible scheduler
class"
interacting with "sched: Allow sched_class::dequeue_task() to fail"
from the tip tree.
Signed-off-by: Stephen Rothwell <sfr@...b.auug.org.au>
---
kernel/sched/ext.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/kernel/sched/ext.c b/kernel/sched/ext.c
index 571a7ea0b5cb..1a9a3cc68a98 100644
--- a/kernel/sched/ext.c
+++ b/kernel/sched/ext.c
@@ -2033,11 +2033,11 @@ static void ops_dequeue(struct task_struct *p, u64 deq_flags)
}
}
-static void dequeue_task_scx(struct rq *rq, struct task_struct *p, int deq_flags)
+static bool dequeue_task_scx(struct rq *rq, struct task_struct *p, int deq_flags)
{
if (!(p->scx.flags & SCX_TASK_QUEUED)) {
WARN_ON_ONCE(task_runnable(p));
- return;
+ return true;
}
ops_dequeue(p, deq_flags);
@@ -2072,6 +2072,8 @@ static void dequeue_task_scx(struct rq *rq, struct task_struct *p, int deq_flags
sub_nr_running(rq, 1);
dispatch_dequeue(rq, p);
+
+ return true;
}
static void yield_task_scx(struct rq *rq)
--
2.43.0
--
Cheers,
Stephen Rothwell
Content of type "application/pgp-signature" skipped
Powered by blists - more mailing lists