• Paolo Bonzini's avatar
    Merge remote-tracking branch 'kvm/next' into kvm-next-5.20 · 63f4b210
    Paolo Bonzini authored
    KVM/s390, KVM/x86 and common infrastructure changes for 5.20
    
    x86:
    
    * Permit guests to ignore single-bit ECC errors
    
    * Fix races in gfn->pfn cache refresh; do not pin pages tracked by the cache
    
    * Intel IPI virtualization
    
    * Allow getting/setting pending triple fault with KVM_GET/SET_VCPU_EVENTS
    
    * PEBS virtualization
    
    * Simplify PMU emulation by just using PERF_TYPE_RAW events
    
    * More accurate event reinjection on SVM (avoid retrying instructions)
    
    * Allow getting/setting the state of the speaker port data bit
    
    * Refuse starting the kvm-intel module if VM-Entry/VM-Exit controls are inconsistent
    
    * "Notify" VM exit (detect microarchitectural hangs) for Intel
    
    * Cleanups for MCE MSR emulation
    
    s390:
    
    * add an interface to provide a hypervisor dump for secure guests
    
    * improve selftests to use TAP interface
    
    * enable interpretive execution of zPCI instructions (for PCI passthrough)
    
    * First part of deferred teardown
    
    * CPU Topology
    
    * PV attestation
    
    * Minor fixes
    
    Generic:
    
    * new selftests API using struct kvm_vcpu instead of a (vm, id) tuple
    
    x86:
    
    * Use try_cmpxchg64 instead of cmpxchg64
    
    * Bugfixes
    
    * Ignore benign host accesses to PMU MSRs when PMU is disabled
    
    * Allow disabling KVM's "MONITOR/MWAIT are NOPs!" behavior
    
    * x86/MMU: Allow NX huge pages to be disabled on a per-vm basis
    
    * Port eager page splitting to shadow MMU as well
    
    * Enable CMCI capability by default and handle injected UCNA errors
    
    * Expose pid of vcpu threads in debugfs
    
    * x2AVIC support for AMD
    
    * cleanup PIO emulation
    
    * Fixes for LLDT/LTR emulation
    
    * Don't require refcounted "struct page" to create huge SPTEs
    
    x86 cleanups:
    
    * Use separate namespaces for guest PTEs and shadow PTEs bitmasks
    
    * PIO emulation
    
    * Reorganize rmap API, mostly around rmap destruction
    
    * Do not workaround very old KVM bugs for L0 that runs with nesting enabled
    
    * new selftests API for CPUID
    63f4b210
kvm_main.c 149 KB