There are many code/logic duplications throughout ioapic/lapic/msi device emulation. Try to consolidate as much code as possible. The patch series is on top of Sheng Yang's patch: KVM: Merge kvm_ioapic_get_delivery_bitmask into kvm_get_intr_delivery_bitmask --- Gleb Natapov (3): Consolidate ioapic/ipi interrupt delivery logic. ioapic/msi interrupt delivery consolidation. Make kvm_apic_set_irq() deliver all kinds of interrupts. arch/ia64/include/asm/kvm_host.h | 1 arch/ia64/kvm/kvm-ia64.c | 33 ++++----- arch/ia64/kvm/lapic.h | 6 +- arch/x86/include/asm/kvm_host.h | 2 - arch/x86/kvm/lapic.c | 147 ++++++++++++++------------------------ arch/x86/kvm/lapic.h | 4 + virt/kvm/ioapic.c | 89 +++++++++-------------- virt/kvm/ioapic.h | 13 ++- virt/kvm/irq_comm.c | 109 +++++++--------------------- 9 files changed, 151 insertions(+), 253 deletions(-) -- Gleb. -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html