aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Roth <michael.roth@amd.com>2024-05-30 06:16:24 -0500
committerPaolo Bonzini <pbonzini@redhat.com>2024-06-05 11:01:06 +0200
commit73ae63b162fc1fed520f53ad200712964d7d0264 (patch)
tree40a8996cb2b97f8d663941ef9cdb6dbfa7d55af4
parent7831221941cccbde922412c1550ed8b4bce7c361 (diff)
downloadqemu-73ae63b162fc1fed520f53ad200712964d7d0264.zip
qemu-73ae63b162fc1fed520f53ad200712964d7d0264.tar.gz
qemu-73ae63b162fc1fed520f53ad200712964d7d0264.tar.bz2
i386/sev: Don't return launch measurements for SEV-SNP guests
For SEV-SNP guests, launch measurement is queried from within the guest during attestation, so don't attempt to return it as part of query-sev-launch-measure. Signed-off-by: Michael Roth <michael.roth@amd.com> Signed-off-by: Pankaj Gupta <pankaj.gupta@amd.com> Message-ID: <20240530111643.1091816-13-pankaj.gupta@amd.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
-rw-r--r--target/i386/sev.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/target/i386/sev.c b/target/i386/sev.c
index 6525b3c..c3daaf1 100644
--- a/target/i386/sev.c
+++ b/target/i386/sev.c
@@ -795,7 +795,9 @@ sev_launch_get_measure(Notifier *notifier, void *unused)
static char *sev_get_launch_measurement(void)
{
- SevGuestState *sev_guest = SEV_GUEST(MACHINE(qdev_get_machine())->cgs);
+ ConfidentialGuestSupport *cgs = MACHINE(qdev_get_machine())->cgs;
+ SevGuestState *sev_guest =
+ (SevGuestState *)object_dynamic_cast(OBJECT(cgs), TYPE_SEV_GUEST);
if (sev_guest &&
SEV_COMMON(sev_guest)->state >= SEV_STATE_LAUNCH_SECRET) {