From: Zhenzhong Duan Date: Thu, 10 Jul 2025 07:21:22 +0000 (-0400) Subject: qemu: Bypass sending VIR_DOMAIN_EVENT_RESUMED event when TD VM reboot X-Git-Tag: v11.6.0~4 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=4747fcc07d801df690180b0b4ea0861c7fc3016f;p=thirdparty%2Flibvirt.git qemu: Bypass sending VIR_DOMAIN_EVENT_RESUMED event when TD VM reboot When TD VM reboot, qemu process is recreated by destroying old and creating new one. When new qemu process starts, it sends a RESUME event while libvirt domain isn't in run state yet. Then event VIR_DOMAIN_EVENT_RESUMED is sent out and confuse control plane. Check priv->pausedShutdown and bypass the event for TD VM, for normal VM, domain is in run state and already bypassing it. Signed-off-by: Zhenzhong Duan Reviewed-by: Daniel P. Berrangé --- diff --git a/src/qemu/qemu_process.c b/src/qemu/qemu_process.c index 6b7b971f27..a81c02c9d5 100644 --- a/src/qemu/qemu_process.c +++ b/src/qemu/qemu_process.c @@ -816,9 +816,11 @@ qemuProcessHandleResume(qemuMonitor *mon G_GNUC_UNUSED, reason = VIR_DOMAIN_RUNNING_POSTCOPY; } virDomainObjSetState(vm, VIR_DOMAIN_RUNNING, reason); - event = virDomainEventLifecycleNewFromObj(vm, - VIR_DOMAIN_EVENT_RESUMED, - eventDetail); + + if (!priv->pausedShutdown) + event = virDomainEventLifecycleNewFromObj(vm, + VIR_DOMAIN_EVENT_RESUMED, + eventDetail); qemuDomainSaveStatus(vm); }