From 4acd18b5b8ef5a054587e64d2e1abfbb584d23fb Mon Sep 17 00:00:00 2001 From: =?utf8?q?Daniel=20P=2E=20Berrang=C3=A9?= Date: Tue, 7 Jan 2025 10:27:21 +0000 Subject: [PATCH] rpc: don't unconditionally quit after preserving state MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit The call to preserve state (ie running VMs) is triggered in response to the desktop session dbus terminating (session daemon), or logind sending a "PrepareForShutdown" signal. In the case of the latter, daemons should only save their state, not actually exit yet. Other things on the system may still expect the daemon to be running at this stage. Reviewed-by: Peter Krempa Signed-off-by: Daniel P. Berrangé --- src/remote/remote_daemon.c | 4 +++- src/rpc/virnetdaemon.c | 1 - 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/remote/remote_daemon.c b/src/remote/remote_daemon.c index 16dc1d86f7..1424d4cf5e 100644 --- a/src/remote/remote_daemon.c +++ b/src/remote/remote_daemon.c @@ -526,8 +526,10 @@ handleSessionMessageFunc(GDBusConnection *connection G_GNUC_UNUSED, if (virGDBusMessageIsSignal(message, "org.freedesktop.DBus.Local", - "Disconnected")) + "Disconnected")) { virNetDaemonStop(dmn); + virNetDaemonQuit(dmn); + } return message; } diff --git a/src/rpc/virnetdaemon.c b/src/rpc/virnetdaemon.c index 43a75b330f..469a1d3ae2 100644 --- a/src/rpc/virnetdaemon.c +++ b/src/rpc/virnetdaemon.c @@ -840,7 +840,6 @@ virNetDaemonStopWorker(void *opaque) VIR_DEBUG("Completed stop dmn=%p", dmn); - virNetDaemonQuit(dmn); virObjectUnref(dmn); } -- 2.47.2