History

Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm

Pull KVM updates from Paolo Bonzini: "ARM: - HYP mode stub supports kexec/kdump on 32-bit - improved PMU support - virtual interrupt controller performance improvements - support for userspace virtual interrupt controller (slower, but necessary for KVM on the weird Broadcom SoCs used by the Raspberry Pi 3) MIPS: - basic support for hardware virtualization (ImgTec P5600/P6600/I6400 and Cavium Octeon III) PPC: - in-kernel acceleration for VFIO s390: - support for guests without storage keys - adapter interruption suppression x86: - usual range of nVMX improvements, notably nested EPT support for accessed and dirty bits - emulation of CPL3 CPUID faulting generic: - first part of VCPU thread request API - kvm_stat improvements" * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm: (227 commits) kvm: nVMX: Don't validate disabled secondary controls KVM: put back #ifndef CONFIG_S390 around kvm_vcpu_kick Revert "KVM: Support vCPU-based gfn->hva cache" tools/kvm: fix top level makefile KVM: x86: don't hold kvm->lock in KVM_SET_GSI_ROUTING KVM: Documentation: remove VM mmap documentation kvm: nVMX: Remove superfluous VMX instruction fault checks KVM: x86: fix emulation of RSM and IRET instructions KVM: mark requests that need synchronization KVM: return if kvm_vcpu_wake_up() did wake up the VCPU KVM: add explicit barrier to kvm_vcpu_kick KVM: perform a wake_up in kvm_make_all_cpus_request KVM: mark requests that do not need a wakeup KVM: remove #ifndef CONFIG_S390 around kvm_vcpu_wake_up KVM: x86: always use kvm_make_request instead of set_bit KVM: add kvm_{test,clear}_request to replace {test,clear}_bit s390: kvm: Cpu model support for msa6, msa7 and msa8 KVM: x86: remove irq disablement around KVM_SET_CLOCK/KVM_GET_CLOCK kvm: better MWAIT emulation for guests KVM: x86: virtualize cpuid faulting ...

Linus Torvalds committed 9 years ago

Commit 2d3e4862 parents 9c6ee01 2e5b0bd150 files · +9189 −3843Browse files

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

Unified · Split

include/uapi/linux/kvm.h+25−0
@@ -702,6 +702,10 @@ struct kvm_ppc_resize_hpt { · 701 unmodified lines
702#define KVM_VM_PPC_HV 1702#define KVM_VM_PPC_HV 1
703#define KVM_VM_PPC_PR 2703#define KVM_VM_PPC_PR 2
704 704
705/* on MIPS, 0 forces trap & emulate, 1 forces VZ ASE */
706#define KVM_VM_MIPS_TE 0
707#define KVM_VM_MIPS_VZ 1
708
705#define KVM_S390_SIE_PAGE_OFFSET 1709#define KVM_S390_SIE_PAGE_OFFSET 1
706 710
707/*711/*
@@ -883,6 +887,14 @@ struct kvm_ppc_resize_hpt { · 175 unmodified lines
883#define KVM_CAP_PPC_MMU_RADIX 134887#define KVM_CAP_PPC_MMU_RADIX 134
884#define KVM_CAP_PPC_MMU_HASH_V3 135888#define KVM_CAP_PPC_MMU_HASH_V3 135
885#define KVM_CAP_IMMEDIATE_EXIT 136889#define KVM_CAP_IMMEDIATE_EXIT 136
890#define KVM_CAP_MIPS_VZ 137
891#define KVM_CAP_MIPS_TE 138
892#define KVM_CAP_MIPS_64BIT 139
893#define KVM_CAP_S390_GS 140
894#define KVM_CAP_S390_AIS 141
895#define KVM_CAP_SPAPR_TCE_VFIO 142
896#define KVM_CAP_X86_GUEST_MWAIT 143
897#define KVM_CAP_ARM_USER_IRQ 144
886 898
887#ifdef KVM_CAP_IRQ_ROUTING899#ifdef KVM_CAP_IRQ_ROUTING
888 900
@@ -1087,6 +1099,7 @@ struct kvm_device_attr { · 198 unmodified lines
1087#define KVM_DEV_VFIO_GROUP 11099#define KVM_DEV_VFIO_GROUP 1
1088#define KVM_DEV_VFIO_GROUP_ADD 11100#define KVM_DEV_VFIO_GROUP_ADD 1
1089#define KVM_DEV_VFIO_GROUP_DEL 21101#define KVM_DEV_VFIO_GROUP_DEL 2
1102#define KVM_DEV_VFIO_GROUP_SET_SPAPR_TCE 3
1090 1103
1091enum kvm_device_type {1104enum kvm_device_type {
1092 KVM_DEV_TYPE_FSL_MPIC_20 = 1,1105 KVM_DEV_TYPE_FSL_MPIC_20 = 1,
@@ -1108,6 +1121,11 @@ enum kvm_device_type { · 15 unmodified lines
1108 KVM_DEV_TYPE_MAX,1121 KVM_DEV_TYPE_MAX,
1109};1122};
1110 1123
1124struct kvm_vfio_spapr_tce {
1125 __s32 groupfd;
1126 __s32 tablefd;
1127};
1128
1111/*1129/*
1112 * ioctls for VM fds1130 * ioctls for VM fds
1113 */1131 */
@@ -1354,4 +1372,11 @@ struct kvm_assigned_msix_entry { · 240 unmodified lines
1354#define KVM_X2APIC_API_USE_32BIT_IDS (1ULL << 0)1372#define KVM_X2APIC_API_USE_32BIT_IDS (1ULL << 0)
1355#define KVM_X2APIC_API_DISABLE_BROADCAST_QUIRK (1ULL << 1)1373#define KVM_X2APIC_API_DISABLE_BROADCAST_QUIRK (1ULL << 1)
1356 1374
1375/* Available with KVM_CAP_ARM_USER_IRQ */
1376
1377/* Bits for run->s.regs.device_irq_level */
1378#define KVM_ARM_DEV_EL1_VTIMER (1 << 0)
1379#define KVM_ARM_DEV_EL1_PTIMER (1 << 1)
1380#define KVM_ARM_DEV_PMU (1 << 2)
1381
1357#endif /* __LINUX_KVM_H */1382#endif /* __LINUX_KVM_H */