From nobody Tue Feb 10 16:18:31 2026 Delivered-To: importer@patchew.org Received-SPF: pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) client-ip=208.118.235.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; spf=pass (zoho.com: domain of gnu.org designates 208.118.235.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [208.118.235.17]) by mx.zohomail.com with SMTPS id 1505499272727655.3984268417084; Fri, 15 Sep 2017 11:14:32 -0700 (PDT) Received: from localhost ([::1]:54512 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dsv8J-000541-N2 for importer@patchew.org; Fri, 15 Sep 2017 14:14:31 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:39231) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1dsv4H-0000rV-9i for qemu-devel@nongnu.org; Fri, 15 Sep 2017 14:10:22 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1dsv4D-0006zu-1e for qemu-devel@nongnu.org; Fri, 15 Sep 2017 14:10:21 -0400 Received: from smtp.citrix.com ([66.165.176.89]:59596) by eggs.gnu.org with esmtps (TLS1.0:RSA_ARCFOUR_SHA1:16) (Exim 4.71) (envelope-from ) id 1dsv4C-0006yi-Rr for qemu-devel@nongnu.org; Fri, 15 Sep 2017 14:10:16 -0400 X-IronPort-AV: E=Sophos;i="5.42,398,1500940800"; d="scan'208";a="439962726" From: Ian Jackson To: Date: Fri, 15 Sep 2017 19:09:58 +0100 Message-ID: <1505498999-17427-6-git-send-email-ian.jackson@eu.citrix.com> X-Mailer: git-send-email 2.1.4 In-Reply-To: <1505498999-17427-1-git-send-email-ian.jackson@eu.citrix.com> References: <1505498999-17427-1-git-send-email-ian.jackson@eu.citrix.com> MIME-Version: 1.0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 66.165.176.89 Subject: [Qemu-devel] [PATCH RFC 5/6] xen: destroy_hvm_domain: Try xendevicemodel_shutdown X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Juergen Gross , Stefano Stabellini , Ian Jackson , xen-devel@nongnu.org Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail: RSF_0 Z_629925259 SPT_0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" xc_interface_open etc. is not going to work if we have dropped privilege, but xendevicemodel_shutdown will if everything is new enough. Signed-off-by: Ian Jackson --- hw/i386/xen/xen-hvm.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/hw/i386/xen/xen-hvm.c b/hw/i386/xen/xen-hvm.c index 83420cd..639425a 100644 --- a/hw/i386/xen/xen-hvm.c +++ b/hw/i386/xen/xen-hvm.c @@ -1386,9 +1386,18 @@ void destroy_hvm_domain(bool reboot) { xc_interface *xc_handle; int sts; + int rc; =20 unsigned int reason =3D reboot ? SHUTDOWN_reboot : SHUTDOWN_poweroff; =20 + if (xen_dmod) { + rc =3D xendevicemodel_shutdown(xen_dmod, xen_domid, reason); + if (!rc) + return; + perror("xendevicemodel_shutdown failed"); + /* well, try the old thing then */ + } + xc_handle =3D xc_interface_open(0, 0, 0); if (xc_handle =3D=3D NULL) { fprintf(stderr, "Cannot acquire xenctrl handle\n"); --=20 2.1.4