All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 00/13] KVM: SVM: Misc SEV cleanups
@ 2021-01-09  0:47 Sean Christopherson
  2021-01-09  0:47 ` [PATCH 01/13] KVM: SVM: Free sev_asid_bitmap during init if SEV setup fails Sean Christopherson
                   ` (12 more replies)
  0 siblings, 13 replies; 28+ messages in thread
From: Sean Christopherson @ 2021-01-09  0:47 UTC (permalink / raw)
  To: Paolo Bonzini, Dave Hansen, Andy Lutomirski, Peter Zijlstra
  Cc: Sean Christopherson, Vitaly Kuznetsov, Wanpeng Li, Jim Mattson,
	Joerg Roedel, kvm, linux-kernel, Tom Lendacky, Borislav Petkov,
	Brijesh Singh

Minor bug fixes and refactorings of SEV related code, mainly to clean up
the KVM code for tracking whether or not SEV and SEV-ES are enabled.  E.g.
KVM has both sev_es and svm_sev_enabled(), and a global 'sev' flag while
also using 'sev' as a local variable in several places.

Based on kvm/master, commit 872f36eb0b0f ("KVM: x86: __kvm_vcpu_halt can
be static").

Not super well tested, but AFAICT the feature detection is working as
expected.

Boris, this obviously touches on the KVM vs. kernel _cpu_has() stuff as
well.  My thought is that we can judge the SME/SEV features solely on
whether or the kernel wants to dedicated a word for 'em, and hash out what
to do with KVM at large in the SGX thread.

Sean Christopherson (13):
  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
  KVM: SVM: Move SEV module params/variables to sev.c
  x86/cpufeatures: Assign dedicated feature word for AMD mem encryption
  KVM: x86: Override reported SME/SEV feature flags with host mask
  x86/sev: Rename global "sev_enabled" flag to "sev_guest"
  KVM: SVM: Append "_enabled" to module-scoped SEV/SEV-ES control
    variables
  KVM: SVM: Unconditionally invoke sev_hardware_teardown()
  KVM: SVM: Explicitly check max SEV ASID during sev_hardware_setup()
  KVM: SVM: Move SEV VMCB tracking allocation to sev.c
  KVM: SVM: Drop redundant svm_sev_enabled() helper
  KVM: SVM: Remove an unnecessary prototype declaration of
    sev_flush_asids()
  KVM: SVM: Skip SEV cache flush if no ASIDs have been used

 arch/x86/include/asm/cpufeature.h             |  7 +-
 arch/x86/include/asm/cpufeatures.h            | 17 +++--
 arch/x86/include/asm/disabled-features.h      |  3 +-
 arch/x86/include/asm/mem_encrypt.h            |  2 +-
 arch/x86/include/asm/required-features.h      |  3 +-
 arch/x86/kernel/cpu/common.c                  |  3 +
 arch/x86/kernel/cpu/scattered.c               |  5 --
 arch/x86/kvm/cpuid.c                          |  2 +
 arch/x86/kvm/cpuid.h                          |  1 +
 arch/x86/kvm/svm/sev.c                        | 64 +++++++++++++------
 arch/x86/kvm/svm/svm.c                        | 35 +++-------
 arch/x86/kvm/svm/svm.h                        |  8 +--
 arch/x86/mm/mem_encrypt.c                     |  4 +-
 arch/x86/mm/mem_encrypt_identity.c            |  2 +-
 .../arch/x86/include/asm/disabled-features.h  |  3 +-
 .../arch/x86/include/asm/required-features.h  |  3 +-
 16 files changed, 88 insertions(+), 74 deletions(-)

-- 
2.30.0.284.gd98b1dd5eaa7-goog


^ permalink raw reply	[flat|nested] 28+ messages in thread

end of thread, other threads:[~2021-01-12 22:19 UTC | newest]

Thread overview: 28+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2021-01-09  0:47 [PATCH 00/13] KVM: SVM: Misc SEV cleanups Sean Christopherson
2021-01-09  0:47 ` [PATCH 01/13] KVM: SVM: Free sev_asid_bitmap during init if SEV setup fails Sean Christopherson
2021-01-11 14:42   ` Tom Lendacky
2021-01-11 18:07     ` Sean Christopherson
2021-01-09  0:47 ` [PATCH 02/13] KVM: SVM: Zero out the VMCB array used to track SEV ASID association Sean Christopherson
2021-01-09  0:47 ` [PATCH 03/13] KVM: SVM: Move SEV module params/variables to sev.c Sean Christopherson
2021-01-11 10:42   ` Vitaly Kuznetsov
2021-01-11 15:36     ` Tom Lendacky
2021-01-11 16:58       ` Vitaly Kuznetsov
2021-01-12 22:18         ` Sean Christopherson
2021-01-11 15:30   ` Tom Lendacky
2021-01-09  0:47 ` [PATCH 04/13] x86/cpufeatures: Assign dedicated feature word for AMD mem encryption Sean Christopherson
2021-01-09  0:47 ` [PATCH 05/13] KVM: x86: Override reported SME/SEV feature flags with host mask Sean Christopherson
2021-01-09  0:47 ` [PATCH 06/13] x86/sev: Rename global "sev_enabled" flag to "sev_guest" Sean Christopherson
2021-01-11 16:02   ` Tom Lendacky
2021-01-11 16:47     ` Tom Lendacky
2021-01-11 17:58       ` Sean Christopherson
2021-01-11 20:28         ` Sean Christopherson
2021-01-09  0:47 ` [PATCH 07/13] KVM: SVM: Append "_enabled" to module-scoped SEV/SEV-ES control variables Sean Christopherson
2021-01-11 16:03   ` Tom Lendacky
2021-01-09  0:47 ` [PATCH 08/13] KVM: SVM: Unconditionally invoke sev_hardware_teardown() Sean Christopherson
2021-01-09  0:47 ` [PATCH 09/13] KVM: SVM: Explicitly check max SEV ASID during sev_hardware_setup() Sean Christopherson
2021-01-09  0:47 ` [PATCH 10/13] KVM: SVM: Move SEV VMCB tracking allocation to sev.c Sean Christopherson
2021-01-09  0:47 ` [PATCH 11/13] KVM: SVM: Drop redundant svm_sev_enabled() helper Sean Christopherson
2021-01-11 17:57   ` Tom Lendacky
2021-01-11 20:59     ` Sean Christopherson
2021-01-09  0:47 ` [PATCH 12/13] KVM: SVM: Remove an unnecessary prototype declaration of sev_flush_asids() Sean Christopherson
2021-01-09  0:47 ` [PATCH 13/13] KVM: SVM: Skip SEV cache flush if no ASIDs have been used Sean Christopherson

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.