Enhanced SMT Protection (ESMTP) is an SEV-SNP feature that lets a guest
constrain what runs on the sibling thread of the core its vCPUs execute
on. Each vCPU's VMSA carries a VCPU_ID and a VCPU_SIBLING_MASK, and
hardware admits a VMRUN only when the sibling thread is idle in host
mode or is running a vCPU that the mask permits.

This series adds support for to opt-in esmtp support from KVM and
engages core scheduling onto the vCPUs to bundle trusted siblings in one
group.

Usage
-----
Requires patched Linux and edk2 builds. Launch an SEV-SNP guest with
ESMTP enabled on the sev-snp-guest object:

  -object sev-snp-guest,id=sev0,cbitpos=51,reduced-phys-bits=1,esmtp=on

ESMTP is opt-in because it carries a performance cost as VMRUN stalls
until the sibling runs work from a trusted vCPU or is in idle.

The guest reports the feature in dmesg among the SNP feature names:

  # dmesg | grep -i SEV

Pratik R. Sampat (2):
  i386/sev: Introduce Enhanced SMT Protection for SEV-SNP
  i386/sev: Add core scheduling for ESMTP enabled guests

 qapi/qom.json     |  9 ++++++-
 target/i386/sev.c | 62 +++++++++++++++++++++++++++++++++++++++++++++++
 target/i386/sev.h |  1 +
 3 files changed, 71 insertions(+), 1 deletion(-)

-- 
2.43.0


Reply via email to