]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
sched_ext: Use IRQ_WORK_INIT_HARD() to initialize sch->disable_irq_work
authorZqiang <qiang.zhang@linux.dev>
Fri, 8 May 2026 11:50:45 +0000 (19:50 +0800)
committerTejun Heo <tj@kernel.org>
Fri, 8 May 2026 15:11:53 +0000 (05:11 -1000)
commitab28a0673daabe7f0fcbd7a5e36334f2f003f02f
tree1912293367e0a1cc60a8284c48321e536b228510
parent1f91d0d5827512816789f74f4d72d16269bde1ec
sched_ext: Use IRQ_WORK_INIT_HARD() to initialize sch->disable_irq_work

For built with PREEMPT_RT kernels, the scx_disable_irq_workfn() is
called from per-cpu irq_work kthreads context, this means that
when call the scx_dump_state() in the scx_disable_irq_workfn() to
output current->comm/pid, it always output current irq_work kthread's
comm/pid. this commit therefore use the IRQ_WORK_INIT_HARD() to
initialize sch->disable_irq_work to make scx_disable_irq_workfn() is
called from hardirq context.

Fixes: f4a6c506d118 ("sched_ext: Always bounce scx_disable() through irq_work")
Signed-off-by: Zqiang <qiang.zhang@linux.dev>
Signed-off-by: Tejun Heo <tj@kernel.org>
kernel/sched/ext.c