[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v3 06/20] target/i386: sev: Use ram_block_discard_disable()
From: |
David Hildenbrand |
Subject: |
[PATCH v3 06/20] target/i386: sev: Use ram_block_discard_disable() |
Date: |
Wed, 3 Jun 2020 16:49:00 +0200 |
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 - let's still implement error handling.
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 | 7 +++++++
1 file changed, 7 insertions(+)
diff --git a/target/i386/sev.c b/target/i386/sev.c
index 51cdbe5496..4a4863db28 100644
--- a/target/i386/sev.c
+++ b/target/i386/sev.c
@@ -649,6 +649,12 @@ sev_guest_init(const char *id)
uint32_t host_cbitpos;
struct sev_user_data_status status = {};
+ ret = ram_block_discard_disable(true);
+ if (ret) {
+ error_report("%s: cannot disable RAM discard", __func__);
+ return NULL;
+ }
+
sev_state = s = g_new0(SEVState, 1);
s->sev_info = lookup_sev_guest_info(id);
if (!s->sev_info) {
@@ -724,6 +730,7 @@ sev_guest_init(const char *id)
err:
g_free(sev_state);
sev_state = NULL;
+ ram_block_discard_disable(false);
return NULL;
}
--
2.25.4
- [PATCH v3 00/20] virtio-mem: Paravirtualized memory hot(un)plug, David Hildenbrand, 2020/06/03
- [PATCH v3 01/20] exec: Introduce ram_block_discard_(disable|require)(), David Hildenbrand, 2020/06/03
- [PATCH v3 02/20] vfio: Convert to ram_block_discard_disable(), David Hildenbrand, 2020/06/03
- [PATCH v3 03/20] accel/kvm: Convert to ram_block_discard_disable(), David Hildenbrand, 2020/06/03
- [PATCH v3 04/20] s390x/pv: Convert to ram_block_discard_disable(), David Hildenbrand, 2020/06/03
- [PATCH v3 05/20] virtio-balloon: Rip out qemu_balloon_inhibit(), David Hildenbrand, 2020/06/03
- [PATCH v3 06/20] target/i386: sev: Use ram_block_discard_disable(),
David Hildenbrand <=
- [PATCH v3 07/20] migration/rdma: Use ram_block_discard_disable(), David Hildenbrand, 2020/06/03
- [PATCH v3 08/20] migration/colo: Use ram_block_discard_disable(), David Hildenbrand, 2020/06/03
- [PATCH v3 09/20] linux-headers: update to contain virtio-mem, David Hildenbrand, 2020/06/03
- [PATCH v3 10/20] virtio-mem: Paravirtualized memory hot(un)plug, David Hildenbrand, 2020/06/03
- [PATCH v3 11/20] virtio-pci: Proxy for virtio-mem, David Hildenbrand, 2020/06/03
- [PATCH v3 12/20] MAINTAINERS: Add myself as virtio-mem maintainer, David Hildenbrand, 2020/06/03
- [PATCH v3 13/20] hmp: Handle virtio-mem when printing memory device info, David Hildenbrand, 2020/06/03
- [PATCH v3 14/20] numa: Handle virtio-mem in NUMA stats, David Hildenbrand, 2020/06/03