[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v3 25/49] i386/sev: Skip RAMBlock notifiers for SNP
From: |
Michael Roth |
Subject: |
[PATCH v3 25/49] i386/sev: Skip RAMBlock notifiers for SNP |
Date: |
Wed, 20 Mar 2024 03:39:21 -0500 |
SEV uses these notifiers to register/pin pages prior to guest use, since
they could potentially be used for private memory where page migration
is not supported. But SNP only uses guest_memfd-provided pages for
private memory, which has its own kernel-internal mechanisms for
registering/pinning memory.
Signed-off-by: Michael Roth <michael.roth@amd.com>
---
target/i386/sev.c | 10 +++++++++-
1 file changed, 9 insertions(+), 1 deletion(-)
diff --git a/target/i386/sev.c b/target/i386/sev.c
index 61af312a11..774262d834 100644
--- a/target/i386/sev.c
+++ b/target/i386/sev.c
@@ -982,7 +982,15 @@ static int sev_kvm_init(ConfidentialGuestSupport *cgs,
Error **errp)
goto err;
}
- ram_block_notifier_add(&sev_ram_notifier);
+ if (!sev_snp_enabled()) {
+ /*
+ * SEV uses these notifiers to register/pin pages prior to guest use,
+ * but SNP relies on guest_memfd for private pages, which has it's
+ * own internal mechanisms for registering/pinning private memory.
+ */
+ ram_block_notifier_add(&sev_ram_notifier);
+ }
+
qemu_add_machine_init_done_notifier(&sev_machine_done_notify);
qemu_add_vm_change_state_handler(sev_vm_state_change, sev_common);
--
2.25.1
- Re: [PATCH v3 21/49] i386/sev: Introduce "sev-common" type to encapsulate common SEV state, (continued)
- [PATCH v3 22/49] i386/sev: Introduce 'sev-snp-guest' object, Michael Roth, 2024/03/20
- [PATCH v3 23/49] i386/sev: Add a sev_snp_enabled() helper, Michael Roth, 2024/03/20
- [PATCH v3 24/49] target/i386: Add handling for KVM_X86_SNP_VM VM type, Michael Roth, 2024/03/20
- [PATCH v3 25/49] i386/sev: Skip RAMBlock notifiers for SNP,
Michael Roth <=
- [PATCH v3 26/49] i386/sev: Skip machine-init-done notifiers for SNP, Michael Roth, 2024/03/20
- [PATCH v3 27/49] i386/sev: Set ms->require_guest_memfd for SNP, Michael Roth, 2024/03/20
- [PATCH v3 28/49] i386/sev: Disable SMM for SNP, Michael Roth, 2024/03/20
- [PATCH v3 29/49] i386/sev: Don't disable block discarding for SNP, Michael Roth, 2024/03/20
- [PATCH v3 30/49] i386/cpu: Set SEV-SNP CPUID bit when SNP enabled, Michael Roth, 2024/03/20