Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

sched_ext: Track @p's rq lock across set_cpus_allowed_scx -> ops.set_cpumask

The SCX_CALL_OP_TASK call site passes rq=NULL incorrectly, leaving
scx_locked_rq() unset. Pass task_rq(p) instead so update_locked_rq()
reflects reality.

v2: Add Fixes: tag (Andrea Righi).

Fixes: 18853ba782be ("sched_ext: Track currently locked rq")
Signed-off-by: Tejun Heo <tj@kernel.org>
Reviewed-by: Andrea Righi <arighi@nvidia.com>

Tejun Heo 9fb45707 a37e1343

+1 -1
+1 -1
kernel/sched/ext.c
··· 3360 3360 * designation pointless. Cast it away when calling the operation. 3361 3361 */ 3362 3362 if (SCX_HAS_OP(sch, set_cpumask)) 3363 - SCX_CALL_OP_TASK(sch, SCX_KF_REST, set_cpumask, NULL, 3363 + SCX_CALL_OP_TASK(sch, SCX_KF_REST, set_cpumask, task_rq(p), 3364 3364 p, (struct cpumask *)p->cpus_ptr); 3365 3365 } 3366 3366