Pull first set of KVM updates from Paolo Bonzini: "PPC: - minor code cleanups x86: - PCID emulation and CR3 caching for shadow page tables - nested VMX live migration - nested VMCS shadowing - optimized IPI hypercall - some optimizations ARM will come next week" * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm: (85 commits) kvm: x86: Set highest physical address bits in non-present/reserved SPTEs KVM/x86: Use CC_SET()/CC_OUT in arch/x86/kvm/vmx.c KVM: X86: Implement PV IPIs in linux guest KVM: X86: Add kvm hypervisor init time platform setup callback KVM: X86: Implement "send IPI" hypercall KVM/x86: Move X86_CR4_OSXSAVE check into kvm_valid_sregs() KVM: x86: Skip pae_root shadow allocation if tdp enabled KVM/MMU: Combine flushing remote tlb in mmu_set_spte() KVM: vmx: skip VMWRITE of HOST_{FS,GS}_BASE when possible KVM: vmx: skip VMWRITE of HOST_{FS,GS}_SEL when possible KVM: vmx: always initialize HOST_{FS,GS}_BASE to zero during setup KVM: vmx: move struct host_state usage to struct loaded_vmcs KVM: vmx: compute need to reload FS/GS/LDT on demand KVM: nVMX: remove a misleading comment regarding vmcs02 fields KVM: vmx: rename __vmx_load_host_state() and vmx_save_host_state() KVM: vmx: add dedicated utility to access guest's kernel_gs_base KVM: vmx: track host_state.loaded using a loaded_vmcs pointer KVM: vmx: refactor segmentation code in vmx_save_host_state() kvm: nVMX: Fix fault priority for VMX operations kvm: nVMX: Fix fault vector for VMX operation at CPL > 0 ...
Showing the changes to include/uapi/linux (2 of 53 files). Show all
Unified · Split
| @@ -950,6 +950,7 @@ struct kvm_ppc_resize_hpt { · 949 unmodified lines | ||
| 950 | 950 | #define KVM_CAP_HYPERV_EVENTFD 154 |
| 951 | 951 | #define KVM_CAP_HYPERV_TLBFLUSH 155 |
| 952 | 952 | #define KVM_CAP_S390_HPAGE_1M 156 |
| 953 | +#define KVM_CAP_NESTED_STATE 157 | |
| 953 | 954 | |
| 954 | 955 | #ifdef KVM_CAP_IRQ_ROUTING |
| 955 | 956 | |
| @@ -1392,6 +1393,9 @@ struct kvm_enc_region { · 436 unmodified lines | ||
| 1392 | 1393 | /* Available with KVM_CAP_HYPERV_EVENTFD */ |
| 1393 | 1394 | #define KVM_HYPERV_EVENTFD _IOW(KVMIO, 0xbd, struct kvm_hyperv_eventfd) |
| 1394 | 1395 | |
| 1396 | +/* Available with KVM_CAP_NESTED_STATE */ | |
| 1397 | +#define KVM_GET_NESTED_STATE _IOWR(KVMIO, 0xbe, struct kvm_nested_state) | |
| 1398 | +#define KVM_SET_NESTED_STATE _IOW(KVMIO, 0xbf, struct kvm_nested_state) | |
| 1395 | 1399 | |
| 1396 | 1400 | /* Secure Encrypted Virtualization command */ |
| 1397 | 1401 | enum sev_cmd_id { |
| @@ -13,6 +13,7 @@ · 12 unmodified lines | ||
| 13 | 13 | /* Return values for hypercalls */ |
| 14 | 14 | #define KVM_ENOSYS 1000 |
| 15 | 15 | #define KVM_EFAULT EFAULT |
| 16 | +#define KVM_EINVAL EINVAL | |
| 16 | 17 | #define KVM_E2BIG E2BIG |
| 17 | 18 | #define KVM_EPERM EPERM |
| 18 | 19 | #define KVM_EOPNOTSUPP 95 |
| @@ -26,6 +27,7 @@ · 7 unmodified lines | ||
| 26 | 27 | #define KVM_HC_MIPS_EXIT_VM 7 |
| 27 | 28 | #define KVM_HC_MIPS_CONSOLE_OUTPUT 8 |
| 28 | 29 | #define KVM_HC_CLOCK_PAIRING 9 |
| 30 | +#define KVM_HC_SEND_IPI 10 | |
| 29 | 31 | |
| 30 | 32 | /* |
| 31 | 33 | * hypercalls use architecture specific |