ioapic: clear remote irr bit for edge-triggered interrupts
authorPeter Xu <peterx@redhat.com>
Tue, 10 May 2016 10:21:22 +0000 (18:21 +0800)
committerPaolo Bonzini <pbonzini@redhat.com>
Mon, 23 May 2016 14:53:43 +0000 (16:53 +0200)
commited1263c363c970a7ad5226b8f41dbbf0c92c1e17
treed3426dde2691f11680bb7cfb93e355f4e1bfb36a
parent479c2a1cb7fb82d23e66eab78b00fc5b0638439b
ioapic: clear remote irr bit for edge-triggered interrupts

This is to better emulate IOAPIC version 0x1X hardware. Linux kernel
leveraged this "feature" to do explicit EOI since EOI register is still
not introduced at that time. This will also fix the issue that level
triggered interrupts failed to work when IR enabled (tested with Linux
kernel version 4.5).

Reviewed-by: Radim Krčmář <rkrcmar@redhat.com>
Signed-off-by: Peter Xu <peterx@redhat.com>
Message-Id: <1462875682-1349-3-git-send-email-peterx@redhat.com>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
hw/intc/ioapic.c