mirror of
https://github.com/torvalds/linux.git
synced 2026-05-30 01:53:29 +02:00
sched_ext: Fixes for v6.17-rc6
This contains 2 sched_ext fixes. - Fix build failure when !FAIR_GROUP_SCHED && EXT_GROUP_SCHED. - Revert "sched_ext: Skip per-CPU tasks in scx_bpf_reenqueue_local()" which was causing issues with per-CPU task scheduling and reenqueuing behavior. -----BEGIN PGP SIGNATURE----- iIQEABYKACwWIQTfIjM1kS57o3GsC/uxYfJx3gVYGQUCaMsN6g4cdGpAa2VybmVs Lm9yZwAKCRCxYfJx3gVYGRHQAP4kRGIyxCaCnoSHHDyI8R2SLUzDKvvByaVNdbKO 5VlCaAEAy0wKViyJDojpd5DXMFlFYCm8gXWQ0aD++hhYX1XfawI= =b+ar -----END PGP SIGNATURE----- Merge tag 'sched_ext-for-6.17-rc6-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/sched_ext Pull sched_ext fixes from Tejun Heo: - Fix build failure when !FAIR_GROUP_SCHED && EXT_GROUP_SCHED - Revert "sched_ext: Skip per-CPU tasks in scx_bpf_reenqueue_local()" which was causing issues with per-CPU task scheduling and reenqueuing behavior * tag 'sched_ext-for-6.17-rc6-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/sched_ext: sched_ext, sched/core: Fix build failure when !FAIR_GROUP_SCHED && EXT_GROUP_SCHED Revert "sched_ext: Skip per-CPU tasks in scx_bpf_reenqueue_local()"
This commit is contained in:
commit
37889ceadd
|
|
@ -9551,7 +9551,7 @@ static unsigned long tg_weight(struct task_group *tg)
|
|||
#ifdef CONFIG_FAIR_GROUP_SCHED
|
||||
return scale_load_down(tg->shares);
|
||||
#else
|
||||
return sched_weight_from_cgroup(tg->scx_weight);
|
||||
return sched_weight_from_cgroup(tg->scx.weight);
|
||||
#endif
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -6788,12 +6788,8 @@ __bpf_kfunc u32 scx_bpf_reenqueue_local(void)
|
|||
* CPUs disagree, they use %ENQUEUE_RESTORE which is bypassed to
|
||||
* the current local DSQ for running tasks and thus are not
|
||||
* visible to the BPF scheduler.
|
||||
*
|
||||
* Also skip re-enqueueing tasks that can only run on this
|
||||
* CPU, as they would just be re-added to the same local
|
||||
* DSQ without any benefit.
|
||||
*/
|
||||
if (p->migration_pending || is_migration_disabled(p) || p->nr_cpus_allowed == 1)
|
||||
if (p->migration_pending)
|
||||
continue;
|
||||
|
||||
dispatch_dequeue(rq, p);
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user