All of lore.kernel.org
 help / color / mirror / Atom feed
From: Sean Christopherson <seanjc@google.com>
To: Paolo Bonzini <pbonzini@redhat.com>,
	Dave Hansen <dave.hansen@linux.intel.com>,
	Andy Lutomirski <luto@kernel.org>,
	Peter Zijlstra <peterz@infradead.org>
Cc: Sean Christopherson <seanjc@google.com>,
	Vitaly Kuznetsov <vkuznets@redhat.com>,
	Wanpeng Li <wanpengli@tencent.com>,
	Jim Mattson <jmattson@google.com>, Joerg Roedel <joro@8bytes.org>,
	kvm@vger.kernel.org, linux-kernel@vger.kernel.org,
	Tom Lendacky <thomas.lendacky@amd.com>,
	Borislav Petkov <bp@suse.de>,
	Brijesh Singh <brijesh.singh@amd.com>
Subject: [PATCH 00/13] KVM: SVM: Misc SEV cleanups
Date: Fri,  8 Jan 2021 16:47:01 -0800	[thread overview]
Message-ID: <20210109004714.1341275-1-seanjc@google.com> (raw)

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


             reply	other threads:[~2021-01-09  0:48 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-01-09  0:47 Sean Christopherson [this message]
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

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20210109004714.1341275-1-seanjc@google.com \
    --to=seanjc@google.com \
    --cc=bp@suse.de \
    --cc=brijesh.singh@amd.com \
    --cc=dave.hansen@linux.intel.com \
    --cc=jmattson@google.com \
    --cc=joro@8bytes.org \
    --cc=kvm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=luto@kernel.org \
    --cc=pbonzini@redhat.com \
    --cc=peterz@infradead.org \
    --cc=thomas.lendacky@amd.com \
    --cc=vkuznets@redhat.com \
    --cc=wanpengli@tencent.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.