Re: [RFC] Deferred interrupt handling.

Alan Cox
2007-07-18T16:47:36Z

> What if we will force the specific device to the end of the list. Once
> IRQ_NONE was returned by the other devices, we will mask the irq,
> forward the irq to the guest, issue a timer for 1msec. Motivation:
> 1msec is long enough for the guest to ack the irq + host unmask the irq

It makes no difference. The deadlock isn't fixable by timing hacks.
Consider the following sequence

Guest0 - blocked on I/O

IRQ14 from your hardware
Block IRQ14
Sent to guest (guest is blocked)

IRQ14 from hard disk
Ignored (as blocked)

Deadlock