From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from firstgate.proxmox.com (firstgate.proxmox.com [IPv6:2a01:7e0:0:424::9]) by lore.proxmox.com (Postfix) with ESMTPS id 311C91FF185 for ; Mon, 4 Aug 2025 15:33:29 +0200 (CEST) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id 1BB3931BBE; Mon, 4 Aug 2025 15:34:58 +0200 (CEST) From: Christoph Heiss To: pve-devel@lists.proxmox.com Date: Mon, 4 Aug 2025 15:29:56 +0200 Message-ID: <20250804133002.1625925-1-c.heiss@proxmox.com> X-Mailer: git-send-email 2.50.1 MIME-Version: 1.0 X-Bm-Milter-Handled: 55990f41-d878-4baa-be0a-ee34c49e34d2 X-Bm-Transport-Timestamp: 1754314446258 X-SPAM-LEVEL: Spam detection results: 0 AWL 0.032 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% DMARC_MISSING 0.1 Missing DMARC policy KAM_DMARC_STATUS 0.01 Test Rule for DKIM or SPF Failure with Strict Alignment SPF_HELO_NONE 0.001 SPF: HELO does not publish an SPF Record SPF_PASS -0.001 SPF: sender matches SPF record Subject: [pve-devel] [PATCH qemu-server] qm: cleanup: do dbus-vmstate safety cleanup silently when requested X-BeenThere: pve-devel@lists.proxmox.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Proxmox VE development discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: Proxmox VE development discussion Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: pve-devel-bounces@lists.proxmox.com Sender: "pve-devel" First, moving to vm_stop_cleanup(), which is a better fit for this. It gets called by the cleanup API method in case of unclean shutdown or from inside the guest. In every case, the dbus-vmstate daemon should _never_ be running at this point, as it is started only before migration and stopped directly after migration, before vm_stop_cleanup() is even called. So it should only be left running in case of a crash during migration. Calling it anyway here ensures that the daemon is always (cleanly) shut down. As the dbus-vmstate is part of the VM scope unit, that would it tear it down too as a last resort. Fixes the following spurious warning when a VM was shutdown from inside the guest: `failed to retrieve org.qemu.VMState1 owners: org.freedesktop.DBus.Error.NameHasNoOwner: Could not get owners of name 'org.qemu.VMState1': no such name` Reported-by: Hannes Duerr Reported-by: Maximiliano Sandoval Signed-off-by: Christoph Heiss --- src/PVE/CLI/qm.pm | 3 --- src/PVE/QemuServer.pm | 2 ++ 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/src/PVE/CLI/qm.pm b/src/PVE/CLI/qm.pm index 3e778ad1..2e56e234 100755 --- a/src/PVE/CLI/qm.pm +++ b/src/PVE/CLI/qm.pm @@ -1056,9 +1056,6 @@ __PACKAGE__->register_method({ PVE::QemuServer::vm_stop_cleanup($storecfg, $vmid, $conf, 0, 0, 1); } - # ensure that no dbus-vmstate helper is left running in any case - PVE::QemuServer::DBusVMState::qemu_del_dbus_vmstate($vmid); - PVE::GuestHelpers::exec_hookscript($conf, $vmid, 'post-stop'); $restart = eval { PVE::QemuServer::clear_reboot_request($vmid) }; diff --git a/src/PVE/QemuServer.pm b/src/PVE/QemuServer.pm index 34d251a7..30ec58b1 100644 --- a/src/PVE/QemuServer.pm +++ b/src/PVE/QemuServer.pm @@ -6102,6 +6102,8 @@ sub vm_stop_cleanup { my ($storecfg, $vmid, $conf, $keepActive, $apply_pending_changes, $noerr) = @_; eval { + # ensure that no dbus-vmstate helper is left running in any case + PVE::QemuServer::DBusVMState::qemu_del_dbus_vmstate($vmid, quiet => $noerr); if (!$keepActive) { my $vollist = get_vm_volumes($conf); -- 2.50.1 _______________________________________________ pve-devel mailing list pve-devel@lists.proxmox.com https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel