[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[RFC PATCH 14/26] migration: Introduce gpa_inside_migration_helper_share
From: |
Dov Murik |
Subject: |
[RFC PATCH 14/26] migration: Introduce gpa_inside_migration_helper_shared_area |
Date: |
Tue, 2 Mar 2021 15:48:10 -0500 |
The gpa_inside_migration_helper_shared_area will be used to skip
migrating RAM pages that are used by the migration helper at the target.
Signed-off-by: Dov Murik <dovmurik@linux.vnet.ibm.com>
---
migration/confidential-ram.h | 2 ++
migration/confidential-ram.c | 6 ++++++
2 files changed, 8 insertions(+)
diff --git a/migration/confidential-ram.h b/migration/confidential-ram.h
index ebe4073bce..9a1027bdaf 100644
--- a/migration/confidential-ram.h
+++ b/migration/confidential-ram.h
@@ -8,6 +8,8 @@
#include "exec/cpu-common.h"
#include "qemu-file.h"
+bool gpa_inside_migration_helper_shared_area(ram_addr_t gpa);
+
void cgs_mh_init(void);
void cgs_mh_cleanup(void);
diff --git a/migration/confidential-ram.c b/migration/confidential-ram.c
index fe317ee74b..0b821af774 100644
--- a/migration/confidential-ram.c
+++ b/migration/confidential-ram.c
@@ -68,6 +68,12 @@ static CGSMigHelperState cmhs = {0};
#define MH_SHARED_CMD_PARAMS_ADDR 0x820000
#define MH_SHARED_IO_PAGE_HDR_ADDR (MH_SHARED_CMD_PARAMS_ADDR + 0x800)
#define MH_SHARED_IO_PAGE_ADDR (MH_SHARED_CMD_PARAMS_ADDR + 0x1000)
+#define MH_SHARED_LAST_BYTE (MH_SHARED_CMD_PARAMS_ADDR + 0x1fff)
+
+bool gpa_inside_migration_helper_shared_area(ram_addr_t gpa)
+{
+ return gpa >= MH_SHARED_CMD_PARAMS_ADDR && gpa <= MH_SHARED_LAST_BYTE;
+}
void cgs_mh_init(void)
{
--
2.20.1
- [RFC PATCH 11/26] softmmu: Add pause_all_vcpus_except_aux, (continued)
- [RFC PATCH 11/26] softmmu: Add pause_all_vcpus_except_aux, Dov Murik, 2021/03/02
- [RFC PATCH 16/26] migration: Load confidential guest RAM using migration helper, Dov Murik, 2021/03/02
- [RFC PATCH 06/26] hw/acpi: Don't include auxiliary vcpus in ACPI tables, Dov Murik, 2021/03/02
- [RFC PATCH 13/26] migration: Add helpers to load confidential RAM, Dov Murik, 2021/03/02
- [RFC PATCH 07/26] cpu: Add boolean aux field to CPUState, Dov Murik, 2021/03/02
- [RFC PATCH 23/26] target/i386: Re-sync kvm-clock after confidential guest migration, Dov Murik, 2021/03/02
- [RFC PATCH 03/26] machine: Add auxcpus=N suboption to -smp, Dov Murik, 2021/03/02
- [RFC PATCH 09/26] softmmu: Don't sync aux vcpus in pre_loadvm, Dov Murik, 2021/03/02
- [RFC PATCH 19/26] migration: Don't sync vcpus when migrating confidential guests, Dov Murik, 2021/03/02
- [RFC PATCH 08/26] hw/i386: Set CPUState.aux=true for auxiliary vcpus, Dov Murik, 2021/03/02
- [RFC PATCH 14/26] migration: Introduce gpa_inside_migration_helper_shared_area,
Dov Murik <=
- [RFC PATCH 18/26] migration: Stop non-aux vcpus before copying the last pages, Dov Murik, 2021/03/02
- [RFC PATCH 25/26] target/i386: SEV: Allow migration unless there are no aux vcpus, Dov Murik, 2021/03/02
- [RFC PATCH 24/26] migration: Add start-migrate-incoming QMP command, Dov Murik, 2021/03/02
- [RFC PATCH 15/26] migration: Save confidential guest RAM using migration helper, Dov Murik, 2021/03/02
- [RFC PATCH 26/26] docs: Add confidential guest live migration documentation, Dov Murik, 2021/03/02
- [RFC PATCH 20/26] migration: When starting target, don't sync auxiliary vcpus, Dov Murik, 2021/03/02
- [RFC PATCH 05/26] hw/i386: Mark auxiliary vcpus in possible_cpus, Dov Murik, 2021/03/02
- [RFC PATCH 10/26] softmmu: Add cpu_synchronize_without_aux_post_init, Dov Murik, 2021/03/02
- [RFC PATCH 17/26] migration: Stop VM after loading confidential RAM, Dov Murik, 2021/03/02
- [RFC PATCH 22/26] hw/isa/lpc_ich9: Allow updating an already-running VM, Dov Murik, 2021/03/02