On Fri, Feb 12, 2021 at 11:42 AM Song Bao Hua (Barry Song) <song.bao.hua@xxxxxxxxxxxxx> wrote: > > Ok, second thought. irqsave before generic_handle_irq() won't defeat > the purpose of preemption too much as the dispatched irq handlers by > gpiochip will run in their own threads but not in the thread of > gpiochip's handler. > > so looks like this patch can improve by: > * move other raw_spin_lock_irqsave to raw_spin_lock; > * keep the raw_spin_lock_irqsave before generic_handle_irq() to mute > the warning in genirq. It seems that the other drivers just call handle_nested_irq() instead of generic_handle_irq(). Arnd