2016-07-01 11:09-0700, David Matlack: > On Thu, Jun 30, 2016 at 1:54 PM, Radim Krčmář <rkrcmar@xxxxxxxxxx> wrote: >> KVM_CAP_X2APIC_API can be enabled to extend APIC ID in get/set ioctl and MSI >> addresses to 32 bits. Both are needed to support x2APIC. >> >> The capability has to be toggleable and disabled by default, because get/set >> ioctl shifted and truncated APIC ID to 8 bits by using a non-standard protocol >> inspired by xAPIC and the change is not backward-compatible. >> >> Changes to MSI addresses follow the format used by interrupt remapping unit. >> The upper address word, that used to be 0, contains upper 24 bits of the LAPIC >> address in its upper 24 bits. Lower 8 bits are reserved as 0. >> Using the upper address word is not backward-compatible either as we didn't >> check that userspace zeroed the word. Reserved bits are still not explicitly >> checked, but non-zero data will affect LAPIC addresses, which will cause a bug. >> >> Signed-off-by: Radim Krčmář <rkrcmar@xxxxxxxxxx> >> --- >> diff --git a/arch/x86/kvm/irq_comm.c b/arch/x86/kvm/irq_comm.c >> @@ -111,12 +111,17 @@ int kvm_irq_delivery_to_apic(struct kvm *kvm, struct kvm_lapic *src, >> } >> >> void kvm_set_msi_irq(struct kvm_kernel_irq_routing_entry *e, >> - struct kvm_lapic_irq *irq) >> + struct kvm_lapic_irq *irq, bool x2apic_api) >> { >> trace_kvm_msi_set_irq(e->msi.address_lo, e->msi.data); > > This tracepoint should start reporting e->msi.address_hi as well now. Good catch, thanks. -- 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