mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/herbert/cryptodev-2.6.git
synced 2026-04-18 03:23:53 -04:00
Merge tag 'kvm-x86-misc-6.14' of https://github.com/kvm-x86/linux into HEAD
KVM x86 misc changes for 6.14: - Overhaul KVM's CPUID feature infrastructure to track all vCPU capabilities instead of just those where KVM needs to manage state and/or explicitly enable the feature in hardware. Along the way, refactor the code to make it easier to add features, and to make it more self-documenting how KVM is handling each feature. - Rework KVM's handling of VM-Exits during event vectoring; this plugs holes where KVM unintentionally puts the vCPU into infinite loops in some scenarios (e.g. if emulation is triggered by the exit), and brings parity between VMX and SVM. - Add pending request and interrupt injection information to the kvm_exit and kvm_entry tracepoints respectively. - Fix a relatively benign flaw where KVM would end up redoing RDPKRU when loading guest/host PKRU, due to a refactoring of the kernel helpers that didn't account for KVM's pre-checking of the need to do WRPKRU.
This commit is contained in:
@@ -1825,15 +1825,18 @@ emulate them efficiently. The fields in each entry are defined as follows:
|
||||
the values returned by the cpuid instruction for
|
||||
this function/index combination
|
||||
|
||||
The TSC deadline timer feature (CPUID leaf 1, ecx[24]) is always returned
|
||||
as false, since the feature depends on KVM_CREATE_IRQCHIP for local APIC
|
||||
support. Instead it is reported via::
|
||||
x2APIC (CPUID leaf 1, ecx[21) and TSC deadline timer (CPUID leaf 1, ecx[24])
|
||||
may be returned as true, but they depend on KVM_CREATE_IRQCHIP for in-kernel
|
||||
emulation of the local APIC. TSC deadline timer support is also reported via::
|
||||
|
||||
ioctl(KVM_CHECK_EXTENSION, KVM_CAP_TSC_DEADLINE_TIMER)
|
||||
|
||||
if that returns true and you use KVM_CREATE_IRQCHIP, or if you emulate the
|
||||
feature in userspace, then you can enable the feature for KVM_SET_CPUID2.
|
||||
|
||||
Enabling x2APIC in KVM_SET_CPUID2 requires KVM_CREATE_IRQCHIP as KVM doesn't
|
||||
support forwarding x2APIC MSR accesses to userspace, i.e. KVM does not support
|
||||
emulating x2APIC in userspace.
|
||||
|
||||
4.47 KVM_PPC_GET_PVINFO
|
||||
-----------------------
|
||||
@@ -7673,6 +7676,7 @@ branch to guests' 0x200 interrupt vector.
|
||||
:Architectures: x86
|
||||
:Parameters: args[0] defines which exits are disabled
|
||||
:Returns: 0 on success, -EINVAL when args[0] contains invalid exits
|
||||
or if any vCPUs have already been created
|
||||
|
||||
Valid bits in args[0] are::
|
||||
|
||||
|
||||
Reference in New Issue
Block a user