Re: [PATCH 7.0 000/307] 7.0.7-rc1 review

From: Andrea Righi

Date: Wed May 13 2026 - 02:07:58 EST


Hello,

On Wed, May 13, 2026 at 01:31:00AM +0200, Peter Schneider wrote:
> Hi Greg,
>
> Am 12.05.2026 um 19:36 schrieb Greg Kroah-Hartman:
> > This is the start of the stable review cycle for the 7.0.7 release.
> > There are 307 patches in this series, all will be posted as a response
> > to this one. If anyone has any issues with these being applied, please
> > let me know.
>
> Trying to build 7.0.7-rc1, I get this build error.
>
> In file included from kernel/sched/build_policy.c:62:
> kernel/sched/ext.c: In function ‘bypass_lb_cpu’:
> kernel/sched/ext.c:4019:35: error: ‘donor_rq’ undeclared (first use in this function); did you mean ‘donee_rq’?
> 4019 | if (task_rq(p) != donor_rq)
> | ^~~~~~~~
> | donee_rq
> kernel/sched/ext.c:4019:35: note: each undeclared identifier is reported only once for each function it appears in
> make[4]: *** [scripts/Makefile.build:289: kernel/sched/build_policy.o] Fehler 1
> make[3]: *** [scripts/Makefile.build:548: kernel/sched] Fehler 2
> make[2]: *** [scripts/Makefile.build:548: kernel] Fehler 2
> make[1]: *** [/usr/src/linux-stable-rc/Makefile:2108: .] Fehler 2
> make: *** [Makefile:248: __sub-make] Fehler 2
> root@linus:/usr/src/linux-stable-rc#
>
> The offending line seems to be part of eb5b997dadc517 (sched_ext: Skip tasks with stale task_rq in bypass_lb_cpu())
> Adding Tejun and Andrea to CC.

The upstream commit (da2d81b4118a) was written on top of ff06f727a941
("sched_ext: Move bypass_dsq into scx_sched_pcpu"), which renamed @rq to
@donor_rq (among other things). That refactor is not in 7.0.y and it's not
stable material.

I think The minimal fix is to rename donor_rq -> rq in the backported hunk, in
7.0.y the function still takes struct rq *rq directly, and that is the donor rq.

Greg, can you fold the following into the queued patch? Do you prefer a
separate/updated patch?

Thanks,
-Andrea

kernel/sched/ext.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/kernel/sched/ext.c b/kernel/sched/ext.c
index 3cb8025b433e0..2bb7c7a902679 100644
--- a/kernel/sched/ext.c
+++ b/kernel/sched/ext.c
@@ -4013,10 +4013,10 @@ static u32 bypass_lb_cpu(struct scx_sched *sch, struct rq *rq,
/*
* If an earlier pass placed @p on @donor_dsq from a different
* CPU and the donee hasn't consumed it yet, @p is still on the
- * previous CPU and task_rq(@p) != @donor_rq. @p can't be moved
+ * previous CPU and task_rq(@p) != @rq. @p can't be moved
* without its rq locked. Skip.
*/
- if (task_rq(p) != donor_rq)
+ if (task_rq(p) != rq)
continue;

donee = cpumask_any_and_distribute(donee_mask, p->cpus_ptr);