In the Linux kernel, the following vulnerability has been resolved: schedext: Fix possible deadlock in the deferredirqworkfn() For PREEMPTRT=y kernels, the deferredirqworkfn() is executed in the per-cpu irqwork/* task context and not disable-irq, if the rq returned by containerof() is current CPU's rq, the following scenarios may occur: lock(&rq->lock); <Interrupt> lock(&rq->lock); This commit use IRQWORKINITHARD() to replace initirqwork() to initialize rq->scx.deferredirqwork, make the deferredirq_workfn() is always invoked in hard-irq context.