[PATCH v2 06/19] target/i386: sev: Use ram_block_discard_disable()

David Hildenbrand
2020-05-20T12:32:35Z

AMD SEV will pin all guest memory, mark discarding of RAM broken. At the
time this is called, we cannot have anyone active that relies on discards
to work properly.

Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com>
Cc: "Michael S. Tsirkin" <mst@redhat.com>
Cc: Paolo Bonzini <pbonzini@redhat.com>
Cc: Richard Henderson <rth@twiddle.net>
Cc: Eduardo Habkost <ehabkost@redhat.com>
Signed-off-by: David Hildenbrand <david@redhat.com>
---
target/i386/sev.c | 1 +
1 file changed, 1 insertion(+)

diff --git a/target/i386/sev.c b/target/i386/sev.c
index 51cdbe5496..cadaefc08d 100644
--- a/target/i386/sev.c
+++ b/target/i386/sev.c
@@ -719,6 +719,7 @@ sev_guest_init(const char *id)
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, s);
+ g_assert(!ram_block_discard_disable(true));

return s;
err:
--
2.25.4