On Thu, 2020-04-02 at 12:04:01 UTC, Nicholas Piggin wrote: > This reverts commit ebb37cf3ffd39fdb6ec5b07111f8bb2f11d92c5f. > > That commit does not play well with soft-masked irq state manipulations > in idle, interrupt replay, and possibly others due to tracing code > sometimes using irq_work_queue (e.g., in trace_hardirqs_on()). That > can cause PACA_IRQ_DEC to become set when it is not expected, and be > ignored or cleared or cause warnings. > > The net result seems to be missing an irq_work until the next timer > interrupt in the worst case which is usually not going to be noticed, > however it could be a long time if the tick is disabled, which is > agains the spirit of irq_work and might cause real problems. > > The idea is still solid, but it would need more work. It's not really > clear if it would be worth added complexity, so revert this for now > (not a straight revert, but replace with a comment explaining why we > might see interrupts happening, and gives git blame something to find). > > Fixes: ebb37cf3ffd3 ("powerpc/64: irq_work avoid interrupt when called with > hardware irqs enabled") > Signed-off-by: Nicholas Piggin <npig...@gmail.com>
Applied to powerpc next, thanks. https://git.kernel.org/powerpc/c/abc3fce76adbdfa8f87272c784b388cd20b46049 cheers