Merge tag 'kvm-4.20-1' of git://git.kernel.org/pub/scm/virt/kvm/kvm
[sfrench/cifs-2.6.git] / tools / arch / x86 / include / uapi / asm / kvm.h
index fd23d5778ea17f04e4c1b178fbcb2ffb3718dec0..8a6eff9c27f3faf349b2b8ba192e55fe0f808f57 100644 (file)
@@ -288,6 +288,7 @@ struct kvm_reinject_control {
 #define KVM_VCPUEVENT_VALID_SIPI_VECTOR        0x00000002
 #define KVM_VCPUEVENT_VALID_SHADOW     0x00000004
 #define KVM_VCPUEVENT_VALID_SMM                0x00000008
+#define KVM_VCPUEVENT_VALID_PAYLOAD    0x00000010
 
 /* Interrupt shadow states */
 #define KVM_X86_SHADOW_INT_MOV_SS      0x01
@@ -299,7 +300,10 @@ struct kvm_vcpu_events {
                __u8 injected;
                __u8 nr;
                __u8 has_error_code;
-               __u8 pad;
+               union {
+                       __u8 pad;
+                       __u8 pending;
+               };
                __u32 error_code;
        } exception;
        struct {
@@ -322,7 +326,9 @@ struct kvm_vcpu_events {
                __u8 smm_inside_nmi;
                __u8 latched_init;
        } smi;
-       __u32 reserved[9];
+       __u8 reserved[27];
+       __u8 exception_has_payload;
+       __u64 exception_payload;
 };
 
 /* for KVM_GET/SET_DEBUGREGS */