From nobody Sat Nov 15 06:34:12 2025 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1754315284; cv=none; d=zohomail.com; s=zohoarc; b=E120gAxYOQjFZWszLDHOtVcwWR/QvM0d59wd/KlPqXuNGR6qGo69vg91xcF1Ek2NF65TSCwPxPT1w0v96Lcp8TCW0sfW/VEvbJWrepDyw3+GKJfDYB2lN1agjzBLJQIRZ+T6C/VJHC88GjShNtDw4VYiTU5n0hSr/kuAhFlSOIE= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1754315284; h=Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=8ETRsH2VJrmaVIIPCd6kg0gglEIjtgLpalOzB+/ZMHs=; b=i0MocSTZiEHE+xONyzrgXJqUKIPQsrnxn7XSoSMmZty5HLKayz8U8XG1RkOXJaatu9YQnkz5U04Auf4FMpCuMWmmujHkWGxYJUZONko6/wHVLW8waFqauBhRCYFz985DDcypUfby6uybY41HdZ9uqEdnN/eWN1Dshq/IeT7w8Fs= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org; dmarc=pass header.from= (p=none dis=none) Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1754315284988310.00192475789754; Mon, 4 Aug 2025 06:48:04 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1uivXG-00050E-Bn; Mon, 04 Aug 2025 09:47:30 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1uipuM-0005B8-6a for qemu-devel@nongnu.org; Mon, 04 Aug 2025 03:46:58 -0400 Received: from mail-pl1-x636.google.com ([2607:f8b0:4864:20::636]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1uipuH-0006w3-Ci for qemu-devel@nongnu.org; Mon, 04 Aug 2025 03:46:57 -0400 Received: by mail-pl1-x636.google.com with SMTP id d9443c01a7336-240763b322fso36655845ad.0 for ; Mon, 04 Aug 2025 00:46:51 -0700 (PDT) Received: from localhost.localdomain ([129.226.77.50]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-241d1ef5fbdsm101871805ad.27.2025.08.04.00.46.48 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 04 Aug 2025 00:46:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1754293610; x=1754898410; darn=nongnu.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=8ETRsH2VJrmaVIIPCd6kg0gglEIjtgLpalOzB+/ZMHs=; b=Le602lBUZCTUNt/UzuhjxeN26HdYsn/v4Kzb9Qd3B2RT6MNatUawcTGloIkCimqRr8 eahEOyl7AX6XqCpArlCqUhD2kCWoZ8EooXt7WTe957gymI1IzH9MVqZ7onvpOZ2PqXLo nDCG/gNglJiFDuHVtdm0R3xOK3TXPOq9AEk4dajr2nrjxOXYwVRatTsBH7uXqUEkub2J /OnRZY9ppDc7548YM80p4GOTVcpw02M1Ohd0eK+0/yxU/4nmZXUSP9RKZqeEN/1AXp4b O25ddgRtx9cVD56AeDeLeXNtdZS3Dg9Yqey0a8GFk9KqzOXMPLBvrv0C+uo3UhTmdGlX gLBQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1754293610; x=1754898410; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=8ETRsH2VJrmaVIIPCd6kg0gglEIjtgLpalOzB+/ZMHs=; b=P3Er4Vws0+sszdTh7N926NN0h4o854WJgGRJm76YCCf/OtQm/dN/3sqKAzbb4HVh9G P+TqQx6gqkP8J0xndCdPxyYCZdD1Qxmdm5lo2L+Y+ISP7QO/QmN+XlukZGCc8skZ6JSN +INeMt7p2o7QPE/JVpX3aUNM70U0CPohSFxS4yEKHFoh9kIkYyZD7pdOfXrtxFHg6jEU zy58EDNVjSD7xbSt8PPejV6Lf/zA+wYUxmLHXs8zWRQObAQmXL7nclou7nyPVZ1+S9YH nIvrm4a7uG0bcBYa9CWibXvoaCXToIzdXV81gknIrJx5EEINwaAyIN0jfPou2dOxQxEP sPBw== X-Gm-Message-State: AOJu0Yw78CHaDppMBJwlj1m+cpkiUW3EIKvp+szi5ERXujkxqid7jR8J fvchANzd8q45eQb1VnOLiOMAxDKs3oEY4FMqBkbUQ76RJw2JD/5I8Sj7hYWHEPBg4b0= X-Gm-Gg: ASbGnctGhx4vBcKjYnhEa9e7C9PfJoH36THv/BXvvm5FQw5kC8jIBYOr2zawla0dTZG riTrF4VmkaU4KU/yJBItBG8ii57oad0oDHcgvmDHF68anplP/hztpisrSoMhQDJ39mdjnu5GzsG +o5Vn+g+qwhQkxba6FW7Rwi+r6w8pPFn5O+pY5lE8V/XoJtK8QxO1Fri9j9s/5ARXI4ahpM2Dn8 e0UiKj4SeG32Z3biZOWIoYS+NOCM47TxuZKiMa6DVq4qI+O/nuGH+YT7vRz8wdKdPr2qYcY+P7F v6pGlHIN+bVPRvx3raO7gmhAWxWLMcoui8ijdOVFj3kZQnKcbnepU3o4sowSB4IY65yEamQuzIO /91yMXL3NzifbBLY58pFMaksUimIzm8a6 X-Google-Smtp-Source: AGHT+IHW18zdbcCeVJNqYeNqxfwrLn+tnaIhXa9rJ1Jk3yS+/nOABLzKkMPkq6YGiTvy/Gn1j3qaDg== X-Received: by 2002:a17:903:230c:b0:23f:df55:cf7b with SMTP id d9443c01a7336-24246f1fc36mr141885635ad.4.1754293610023; Mon, 04 Aug 2025 00:46:50 -0700 (PDT) From: zhengnici@gmail.com To: qemu-devel@nongnu.org Cc: michael.roth@amd.com, kkostiuk@redhat.com, panzerzheng Subject: [PATCH] qga: Fix error handling in system suspend mode causing libvirt to hold lock indefinitely Date: Mon, 4 Aug 2025 15:46:41 +0800 Message-ID: <20250804074641.6021-1-zhengnici@gmail.com> X-Mailer: git-send-email 2.43.7 MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=2607:f8b0:4864:20::636; envelope-from=zhengnici@gmail.com; helo=mail-pl1-x636.google.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-Mailman-Approved-At: Mon, 04 Aug 2025 09:13:39 -0400 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: qemu-devel-bounces+importer=patchew.org@nongnu.org X-ZohoMail-DKIM: pass (identity @gmail.com) X-ZM-MESSAGEID: 1754315287351116600 Content-Type: text/plain; charset="utf-8" From: panzerzheng When "/sys/power/state" does not contain "disk", the operating system does not support hibernation. Executing "sudo systemctl hibernate" will return an exit code of 1 with the stderr output: "Call to Hibernate failed: Sleep verb 'hibernate' is not configured or configuration is not supported = by kernel". This patch adds handling for exit code 1 in the systemd_suspend function, setting appropriate error messages when the kernel does not support standby. It also adds local_err handling in the guest_suspend function to set mode_supported to false. Without these fixes, libvirt would hold the lock indefinitely. Signed-off-by: panzerzheng --- qga/commands-linux.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/qga/commands-linux.c b/qga/commands-linux.c index 9e8a934b9a..26229396c3 100644 --- a/qga/commands-linux.c +++ b/qga/commands-linux.c @@ -1300,6 +1300,12 @@ static void systemd_suspend(SuspendMode mode, Error = **errp) return; } =20 + if ((status =3D=3D 1) && !local_err) { + error_setg(errp, "'systemctl %s' not suspend", + systemctl_args[mode]); + return; + } + if (local_err) { error_propagate(errp, local_err); } else { @@ -1428,6 +1434,8 @@ static void guest_suspend(SuspendMode mode, Error **e= rrp) =20 if (!local_err) { return; + } else { + mode_supported =3D false; } } =20 --=20 2.43.7