• Linus Torvalds's avatar
    Merge tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm · 152d32aa
    Linus Torvalds authored
    Pull kvm updates from Paolo Bonzini:
     "This is a large update by KVM standards, including AMD PSP (Platform
      Security Processor, aka "AMD Secure Technology") and ARM CoreSight
      (debug and trace) changes.
    
      ARM:
    
       - CoreSight: Add support for ETE and TRBE
    
       - Stage-2 isolation for the host kernel when running in protected
         mode
    
       - Guest SVE support when running in nVHE mode
    
       - Force W^X hypervisor mappings in nVHE mode
    
       - ITS save/restore for guests using direct injection with GICv4.1
    
       - nVHE panics now produce readable backtraces
    
       - Guest support for PTP using the ptp_kvm driver
    
       - Performance improvements in the S2 fault handler
    
      x86:
    
       - AMD PSP driver changes
    
       - Optimizations and cleanup of nested SVM code
    
       - AMD: Support for virtual SPEC_CTRL
    
       - Optimizations of the new MMU code: fast invalidation, zap under
         read lock, enable/disably dirty page logging under read lock
    
       - /dev/kvm API for AMD SEV live migration (guest API coming soon)
    
       - support SEV virtual machines sharing the same encryption context
    
       - support SGX in virtual machines
    
       - add a few more statistics
    
       - improved directed yield heuristics
    
       - Lots and lots of cleanups
    
      Generic:
    
       - Rework of MMU notifier interface, simplifying and optimizing the
         architecture-specific code
    
       - a handful of "Get rid of oprofile leftovers" patches
    
       - Some selftests improvements"
    
    * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm: (379 commits)
      KVM: selftests: Speed up set_memory_region_test
      selftests: kvm: Fix the check of return value
      KVM: x86: Take advantage of kvm_arch_dy_has_pending_interrupt()
      KVM: SVM: Skip SEV cache flush if no ASIDs have been used
      KVM: SVM: Remove an unnecessary prototype declaration of sev_flush_asids()
      KVM: SVM: Drop redundant svm_sev_enabled() helper
      KVM: SVM: Move SEV VMCB tracking allocation to sev.c
      KVM: SVM: Explicitly check max SEV ASID during sev_hardware_setup()
      KVM: SVM: Unconditionally invoke sev_hardware_teardown()
      KVM: SVM: Enable SEV/SEV-ES functionality by default (when supported)
      KVM: SVM: Condition sev_enabled and sev_es_enabled on CONFIG_KVM_AMD_SEV=y
      KVM: SVM: Append "_enabled" to module-scoped SEV/SEV-ES control variables
      KVM: SEV: Mask CPUID[0x8000001F].eax according to supported features
      KVM: SVM: Move SEV module params/variables to sev.c
      KVM: SVM: Disable SEV/SEV-ES if NPT is disabled
      KVM: SVM: Free sev_asid_bitmap during init if SEV setup fails
      KVM: SVM: Zero out the VMCB array used to track SEV ASID association
      x86/sev: Drop redundant and potentially misleading 'sev_enabled'
      KVM: x86: Move reverse CPUID helpers to separate header file
      KVM: x86: Rename GPR accessors to make mode-aware variants the defaults
      ...
    152d32aa
kvm_host.h 54.4 KB