Re: [PATCH] uio: User IRQ Mode

From: Magnus Damm
Date: Thu Jul 03 2008 - 04:18:26 EST


On Wed, Jul 2, 2008 at 8:31 PM, Alan Cox <alan@xxxxxxxxxxxxxxxxxxx> wrote:
>> Note that the irq is disabled instead of acked. So this should not be a
>> problem. The userspace part then is responsible to ack (first) and
>> unmask the irq.
>
> That still doesn't make sense.
>
> If you call disable_irq in the IRQ handler you will deadlock because it
> waits until the IRQ handler has completed.

Right, the uio_userirq_handler() function should use
disable_irq_nosync() instead of disable_irq(). Otherwise we'll end up
waiting forever for IRQ_INPROGRESS to be cleared in synchronize_irq()
in the case of CONFIG_SMP.

Thanks!

/ magnus
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/