From: Ani Sinha <[email protected]>
Fix issues reported by Peter.
Fixes: ec9bafd2ea9d12c ("i386/sev: add support for confidential guest reset")
Fixes: e76c30bb13ecb9d ("hw/machine: introduce machine specific option
'x-change-vmfd-on-reset'")
Reported-by: Peter Maydell <[email protected]>
Reviewed-by: Zhao Liu <[email protected]>
Signed-off-by: Ani Sinha <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Paolo Bonzini <[email protected]>
---
system/runstate.c | 10 +++++-----
target/i386/sev.c | 4 ----
2 files changed, 5 insertions(+), 9 deletions(-)
diff --git a/system/runstate.c b/system/runstate.c
index eca722b43c6..77cb14ae028 100644
--- a/system/runstate.c
+++ b/system/runstate.c
@@ -508,13 +508,13 @@ static int qemu_debug_requested(void)
*/
void qemu_system_reset(ShutdownCause reason)
{
- MachineClass *mc;
- ResetType type;
+ MachineClass *mc = current_machine ? MACHINE_GET_CLASS(current_machine) :
NULL;
AccelClass *ac = ACCEL_GET_CLASS(current_accel());
+ bool force_vmfd_change =
+ current_machine ? current_machine->new_accel_vmfd_on_reset : false;
bool guest_state_rebuilt = false;
int ret;
-
- mc = current_machine ? MACHINE_GET_CLASS(current_machine) : NULL;
+ ResetType type;
cpu_synchronize_all_states();
@@ -528,7 +528,7 @@ void qemu_system_reset(ShutdownCause reason)
if ((reason == SHUTDOWN_CAUSE_GUEST_RESET ||
reason == SHUTDOWN_CAUSE_HOST_QMP_SYSTEM_RESET) &&
- (current_machine->new_accel_vmfd_on_reset || !cpus_are_resettable())) {
+ (force_vmfd_change || !cpus_are_resettable())) {
if (ac->rebuild_guest) {
ret = ac->rebuild_guest(current_machine);
if (ret < 0) {
diff --git a/target/i386/sev.c b/target/i386/sev.c
index cddffe0da8d..9dde972c118 100644
--- a/target/i386/sev.c
+++ b/target/i386/sev.c
@@ -2011,10 +2011,6 @@ static void sev_handle_reset(Object *obj, ResetType type)
SevCommonState *sev_common = SEV_COMMON(MACHINE(qdev_get_machine())->cgs);
SevCommonStateClass *klass = SEV_COMMON_GET_CLASS(sev_common);
- if (!sev_common) {
- return;
- }
-
if (!runstate_is_running()) {
return;
}
--
2.53.0