Re: [PATCH] irqchip/atmel-aic: Fix potential deadlock in ->xlate()

From: Marc Zyngier
Date: Tue Sep 13 2016 - 08:21:36 EST


On 13/09/16 12:23, Boris Brezillon wrote:
> On Tue, 13 Sep 2016 12:10:09 +0200
> Boris Brezillon <boris.brezillon@xxxxxxxxxxxxxxxxxx> wrote:
>
>> aic5_irq_domain_xlate() and aic_irq_domain_xlate() take the generic chip
>> lock without disabling interrupts, which can lead to a deadlock if an
>> interrupt occurs while the lock is held in one of these functions.
>>
>> Replace irq_gc_{lock,unlock}() calls by
>> raw_spin_{lock_irqsave,unlock_irqrestore}() ones to prevent this bug from
>> happening.
>>
>> Signed-off-by: Boris Brezillon <boris.brezillon@xxxxxxxxxxxxxxxxxx>
>> Fixes: b1479ebb7720 ("irqchip: atmel-aic: Add atmel AIC/AIC5 drivers")
>> Cc: <stable@xxxxxxxxxxxxxxx>
>
> Oops, should be
>
> Cc: <stable@xxxxxxxxxxxxxxx>
>
> Do you want me to send a v2?

You might as well, so that tglx can pick the patch with my ack on it.

Thanks,

M.
--
Jazz is not dead. It just smells funny...