On 23/02/2021 02:34, Volodymyr Babchuk wrote: > With XEN preemption enabled, scheduler functions can be called with > IRQs disabled (for example, at end of IRQ handler), so we should > save and restore IRQ state in schedulers code. > > Signed-off-by: Volodymyr Babchuk <volodymyr_babc...@epam.com>
These functions need to fixed not to be _irq() variants in the first place. The only reason they're like that is so the schedule softirq/irq can edit the runqueues. I seem to recall Dario having a plan to switch the runqueues to using a lockless update mechanism, which IIRC removes any need for any of the scheduler locks to be irqs-off. ~Andrew