• Linus Torvalds's avatar
    Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm · 7c5c3a61
    Linus Torvalds authored
    Pull kvm updates from Paolo Bonzini:
     "Quite a large pull request due to a selftest API overhaul and some
      patches that had come in too late for 5.19.
    
      ARM:
    
       - Unwinder implementations for both nVHE modes (classic and
         protected), complete with an overflow stack
    
       - Rework of the sysreg access from userspace, with a complete rewrite
         of the vgic-v3 view to allign with the rest of the infrastructure
    
       - Disagregation of the vcpu flags in separate sets to better track
         their use model.
    
       - A fix for the GICv2-on-v3 selftest
    
       - A small set of cosmetic fixes
    
      RISC-V:
    
       - Track ISA extensions used by Guest using bitmap
    
       - Added system instruction emulation framework
    
       - Added CSR emulation framework
    
       - Added gfp_custom flag in struct kvm_mmu_memory_cache
    
       - Added G-stage ioremap() and iounmap() functions
    
       - Added support for Svpbmt inside Guest
    
      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
    
      x86:
    
       - Permit guests to ignore single-bit ECC errors
    
       - 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
    
       - Use try_cmpxchg64 instead of cmpxchg64
    
       - Ignore benign host accesses to PMU MSRs when PMU is disabled
    
       - Allow disabling KVM's "MONITOR/MWAIT are NOPs!" behavior
    
       - Allow NX huge page mitigation 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
    
       - Miscellaneous cleanups:
          - MCE MSR emulation
          - 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
    
      Generic:
    
       - Fix races in gfn->pfn cache refresh; do not pin pages tracked by
         the cache
    
       - new selftests API using struct kvm_vcpu instead of a (vm, id)
         tuple"
    
    * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm: (606 commits)
      selftests: kvm: set rax before vmcall
      selftests: KVM: Add exponent check for boolean stats
      selftests: KVM: Provide descriptive assertions in kvm_binary_stats_test
      selftests: KVM: Check stat name before other fields
      KVM: x86/mmu: remove unused variable
      RISC-V: KVM: Add support for Svpbmt inside Guest/VM
      RISC-V: KVM: Use PAGE_KERNEL_IO in kvm_riscv_gstage_ioremap()
      RISC-V: KVM: Add G-stage ioremap() and iounmap() functions
      KVM: Add gfp_custom flag in struct kvm_mmu_memory_cache
      RISC-V: KVM: Add extensible CSR emulation framework
      RISC-V: KVM: Add extensible system instruction emulation framework
      RISC-V: KVM: Factor-out instruction emulation into separate sources
      RISC-V: KVM: move preempt_disable() call in kvm_arch_vcpu_ioctl_run
      RISC-V: KVM: Make kvm_riscv_guest_timer_init a void function
      RISC-V: KVM: Fix variable spelling mistake
      RISC-V: KVM: Improve ISA extension by using a bitmap
      KVM, x86/mmu: Fix the comment around kvm_tdp_mmu_zap_leafs()
      KVM: SVM: Dump Virtual Machine Save Area (VMSA) to klog
      KVM: x86/mmu: Treat NX as a valid SPTE bit for NPT
      KVM: x86: Do not block APIC write for non ICR registers
      ...
    7c5c3a61
cpufeatures.h 29.4 KB