x86: re-inject emulated level pirqs in PV on HVM guests if still
authorStefano Stabellini <stefano.stabellini@eu.citrix.com>
Thu, 27 Oct 2011 15:07:18 +0000 (16:07 +0100)
committerStefano Stabellini <stefano.stabellini@eu.citrix.com>
Thu, 27 Oct 2011 15:07:18 +0000 (16:07 +0100)
commitb96a29f78513b970c530e0e91dff16bfb559fad3
tree44c58a1cd4267e16564a0920625e9d9fb38c869a
parent6f4e4735b30d5709c76e6da64f9bf2b616808cb1
x86: re-inject emulated level pirqs in PV on HVM guests if still
asserted

PV on HVM guests can loose level interrupts coming from emulated
devices if they have been remapped onto event channels.  The reason is
that we are missing the code to inject a pirq again in the guest when
the guest EOIs it, if it corresponds to an emulated level interrupt
and the interrupt is still asserted.

Fix this issue and also return error when the guest tries to get the
irq_status of a non-existing pirq.

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Committed-by: Keir Fraser <keir@xen.org>
xen/arch/x86/physdev.c