History

Merge tag 'kvm-3.8-1' of git://git.kernel.org/pub/scm/virt/kvm/kvm

Pull KVM updates from Marcelo Tosatti: "Considerable KVM/PPC work, x86 kvmclock vsyscall support, IA32_TSC_ADJUST MSR emulation, amongst others." Fix up trivial conflict in kernel/sched/core.c due to cross-cpu migration notifier added next to rq migration call-back. * tag 'kvm-3.8-1' of git://git.kernel.org/pub/scm/virt/kvm/kvm: (156 commits) KVM: emulator: fix real mode segment checks in address linearization VMX: remove unneeded enable_unrestricted_guest check KVM: VMX: fix DPL during entry to protected mode x86/kexec: crash_vmclear_local_vmcss needs __rcu kvm: Fix irqfd resampler list walk KVM: VMX: provide the vmclear function and a bitmap to support VMCLEAR in kdump x86/kexec: VMCLEAR VMCSs loaded on all cpus if necessary KVM: MMU: optimize for set_spte KVM: PPC: booke: Get/set guest EPCR register using ONE_REG interface KVM: PPC: bookehv: Add EPCR support in mtspr/mfspr emulation KVM: PPC: bookehv: Add guest computation mode for irq delivery KVM: PPC: Make EPCR a valid field for booke64 and bookehv KVM: PPC: booke: Extend MAS2 EPN mask for 64-bit KVM: PPC: e500: Mask MAS2 EPN high 32-bits in 32/64 tlbwe emulation KVM: PPC: Mask ea's high 32-bits in 32/64 instr emulation KVM: PPC: e500: Add emulation helper for getting instruction ea KVM: PPC: bookehv64: Add support for interrupt handling KVM: PPC: bookehv: Remove GET_VCPU macro from exception handler KVM: PPC: booke: Fix get_tb() compile error on 64-bit KVM: PPC: e500: Silence bogus GCC warning in tlb code ...

Linus Torvalds committed 13 years ago

Commit 66cdd0c2 parents 896ea17 58b7825101 files · +4926 −1289Browse files

Showing the changes to include/uapi/linux (1 of 101 files). Show all

Unified · Split

include/uapi/linux/kvm.h+16−5
@@ -167,10 +167,15 @@ struct kvm_pit_config { · 166 unmodified lines
167167 #define KVM_EXIT_OSI 18
168168 #define KVM_EXIT_PAPR_HCALL 19
169169 #define KVM_EXIT_S390_UCONTROL 20
170+#define KVM_EXIT_WATCHDOG 21
170171
171172 /* For KVM_EXIT_INTERNAL_ERROR */
172−#define KVM_INTERNAL_ERROR_EMULATION 1
173−#define KVM_INTERNAL_ERROR_SIMUL_EX 2
173+/* Emulate instruction failed. */
174+#define KVM_INTERNAL_ERROR_EMULATION 1
175+/* Encounter unexpected simultaneous exceptions. */
176+#define KVM_INTERNAL_ERROR_SIMUL_EX 2
177+/* Encounter unexpected vm-exit due to delivery event. */
178+#define KVM_INTERNAL_ERROR_DELIVERY_EV 3
174179
175180 /* for KVM_RUN, returned by mmap(vcpu_fd, offset=0) */
176181 struct kvm_run {
@@ -477,6 +482,8 @@ struct kvm_ppc_smmu_info { · 300 unmodified lines
477482 struct kvm_ppc_one_seg_page_size sps[KVM_PPC_PAGE_SIZES_MAX_SZ];
478483 };
479484
485+#define KVM_PPC_PVINFO_FLAGS_EV_IDLE (1<<0)
486+
480487 #define KVMIO 0xAE
481488
482489 /* machine type bits, to be used as argument to KVM_CREATE_VM */
@@ -626,6 +633,8 @@ struct kvm_ppc_smmu_info { · 143 unmodified lines
626633 #define KVM_CAP_READONLY_MEM 81
627634 #endif
628635 #define KVM_CAP_IRQFD_RESAMPLE 82
636+#define KVM_CAP_PPC_BOOKE_WATCHDOG 83
637+#define KVM_CAP_PPC_HTAB_FD 84
629638
630639 #ifdef KVM_CAP_IRQ_ROUTING
631640
@@ -848,6 +857,11 @@ struct kvm_s390_ucas_mapping { · 216 unmodified lines
848857 #define KVM_PPC_GET_SMMU_INFO _IOR(KVMIO, 0xa6, struct kvm_ppc_smmu_info)
849858 /* Available with KVM_CAP_PPC_ALLOC_HTAB */
850859 #define KVM_PPC_ALLOCATE_HTAB _IOWR(KVMIO, 0xa7, __u32)
860+#define KVM_CREATE_SPAPR_TCE _IOW(KVMIO, 0xa8, struct kvm_create_spapr_tce)
861+/* Available with KVM_CAP_RMA */
862+#define KVM_ALLOCATE_RMA _IOR(KVMIO, 0xa9, struct kvm_allocate_rma)
863+/* Available with KVM_CAP_PPC_HTAB_FD */
864+#define KVM_PPC_GET_HTAB_FD _IOW(KVMIO, 0xaa, struct kvm_get_htab_fd)
851865
852866 /*
853867 * ioctls for vcpu fds
@@ -911,9 +925,6 @@ struct kvm_s390_ucas_mapping { · 57 unmodified lines
911925 /* Available with KVM_CAP_XCRS */
912926 #define KVM_GET_XCRS _IOR(KVMIO, 0xa6, struct kvm_xcrs)
913927 #define KVM_SET_XCRS _IOW(KVMIO, 0xa7, struct kvm_xcrs)
914−#define KVM_CREATE_SPAPR_TCE _IOW(KVMIO, 0xa8, struct kvm_create_spapr_tce)
915−/* Available with KVM_CAP_RMA */
916−#define KVM_ALLOCATE_RMA _IOR(KVMIO, 0xa9, struct kvm_allocate_rma)
917928 /* Available with KVM_CAP_SW_TLB */
918929 #define KVM_DIRTY_TLB _IOW(KVMIO, 0xaa, struct kvm_dirty_tlb)
919930 /* Available with KVM_CAP_ONE_REG */