Re: [PATCH 6.12 000/122] 6.12.11-rc1 review
From: Mike Galbraith
Date: Tue Jan 28 2025 - 10:22:05 EST
On Tue, 2025-01-28 at 15:39 +0100, Peter Zijlstra wrote:
> On Tue, Jan 28, 2025 at 12:46:07PM +0100, Mike Galbraith wrote:
>
> > Seems 6.13 is gripe free thanks to it containing 4423af84b297.
> >
> > I stumbled upon a reproducer for my x86_64 desktop box: all I need do
> > is fire up a kvm guest in an enterprise configured host. That inspires
> > libvirt goop to engage group scheduling, splat follows instantly.
> >
> > Back 4423af84b297 out of 6.13, it starts griping, add it to a 6.12 tree
> > containing 6d71a9c61604, it stops doing so.
>
> Ooh, does something like the below (+- reverse-renames as applicable to
> .12) also help?
Yup, seems to, 6.13 sans 4423af84b297 stopped griping.
> ---
> diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c
> index b67222dea491..8766f7d3d297 100644
> --- a/kernel/sched/fair.c
> +++ b/kernel/sched/fair.c
> @@ -3781,6 +3781,7 @@ static void reweight_entity(struct cfs_rq *cfs_rq, struct sched_entity *se,
> update_entity_lag(cfs_rq, se);
> se->deadline -= se->vruntime;
> se->rel_deadline = 1;
> + cfs_rq->nr_queued--;
> if (!curr)
> __dequeue_entity(cfs_rq, se);
> update_load_sub(&cfs_rq->load, se->load.weight);
> @@ -3811,6 +3812,7 @@ static void reweight_entity(struct cfs_rq *cfs_rq, struct sched_entity *se,
> place_entity(cfs_rq, se, 0);
> if (!curr)
> __enqueue_entity(cfs_rq, se);
> + cfs_rq->nr_queued++;
>
> /*
> * The entity's vruntime has been adjusted, so let's check