From nobody Wed Nov 27 02:25:14 2024 Delivered-To: importer@patchew.org Authentication-Results: mx.zohomail.com; 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 Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1701280121331271.9907273259595; Wed, 29 Nov 2023 09:48:41 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1r8OfT-0004BV-Ag; Wed, 29 Nov 2023 12:48:12 -0500 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 1r8OfM-000475-0j for qemu-devel@nongnu.org; Wed, 29 Nov 2023 12:48:04 -0500 Received: from todd.t-8ch.de ([2a01:4f8:c010:41de::1]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1r8OfH-0003lY-Qf for qemu-devel@nongnu.org; Wed, 29 Nov 2023 12:48:01 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=t-8ch.de; s=mail; t=1701280076; bh=fXPK/ieLyOctY/QvpO55plUhgrfm0NYym34/Dt/Hm74=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=pIXQmKgDh0lfqr7Nydc92I6edWukCJo2b6WhsAF2LbSwVfitzqx2Kapls9KyxWXYj Zear2xeUgRKkT9+LJ9jmboVj093M5sVPUUvzNPKdhWX9Q6USsQ1HiW6s9+RkNpnIkh XcYQQHIxLoHSmzVERbs1evuYGUYOXHwlFDkP9BOs= From: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= Date: Wed, 29 Nov 2023 18:47:53 +0100 Subject: [PATCH v3 1/4] linux-headers: drop pvpanic.h MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20231129-pvpanic-shutdown-v3-1-c9a2892fc523@t-8ch.de> References: <20231129-pvpanic-shutdown-v3-0-c9a2892fc523@t-8ch.de> In-Reply-To: <20231129-pvpanic-shutdown-v3-0-c9a2892fc523@t-8ch.de> To: "Michael S. Tsirkin" , Cornelia Huck , Paolo Bonzini , Thomas Huth , Laurent Vivier Cc: qemu-devel@nongnu.org, =?utf-8?q?Thomas_Wei=C3=9Fschuh?= X-Mailer: b4 0.12.4 X-Developer-Signature: v=1; a=ed25519-sha256; t=1701280076; l=3680; i=thomas@t-8ch.de; s=20221212; h=from:subject:message-id; bh=fXPK/ieLyOctY/QvpO55plUhgrfm0NYym34/Dt/Hm74=; b=tFLRXTDeD6z2/8zD221OiyPKkIHwiDy8xaaEgnEliNdaHG2M39je+xg38S1C9n0znBM5PkqT7 b5FuMR4xGRFAGgkQ0BP4gcFhFhdq+i64btMQIK884G6ra6Z3hi6czud X-Developer-Key: i=thomas@t-8ch.de; a=ed25519; pk=KcycQgFPX2wGR5azS7RhpBqedglOZVgRPfdFSPB1LNw= 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=2a01:4f8:c010:41de::1; envelope-from=thomas@t-8ch.de; helo=todd.t-8ch.de 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, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action 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-ZM-MESSAGEID: 1701280132309000002 misc/pvpanic.h from the Linux UAPI does not define a Linux UAPI but a qemu device API. This leads to a weird process when updates to the interface are needed: 1) Change to the specification in the qemu tree 2) Change to the header in the Linux tree 3) Re-import of the header into Qemu. The kernel prefers to drop the header anyways. Prepare for the removal from the Linux UAPI headers by moving the contents to the existing pvpanic.h header. Link: https://lore.kernel.org/lkml/2023110431-pacemaker-pruning-0e4c@gregkh/ Signed-off-by: Thomas Wei=C3=9Fschuh --- hw/misc/pvpanic-isa.c | 1 - hw/misc/pvpanic-pci.c | 1 - hw/misc/pvpanic.c | 1 - include/hw/misc/pvpanic.h | 3 +++ include/standard-headers/linux/pvpanic.h | 9 --------- scripts/update-linux-headers.sh | 3 +-- 6 files changed, 4 insertions(+), 14 deletions(-) diff --git a/hw/misc/pvpanic-isa.c b/hw/misc/pvpanic-isa.c index ccec50f61bbd..ef438a31fbe9 100644 --- a/hw/misc/pvpanic-isa.c +++ b/hw/misc/pvpanic-isa.c @@ -21,7 +21,6 @@ #include "hw/misc/pvpanic.h" #include "qom/object.h" #include "hw/isa/isa.h" -#include "standard-headers/linux/pvpanic.h" #include "hw/acpi/acpi_aml_interface.h" =20 OBJECT_DECLARE_SIMPLE_TYPE(PVPanicISAState, PVPANIC_ISA_DEVICE) diff --git a/hw/misc/pvpanic-pci.c b/hw/misc/pvpanic-pci.c index fbcaa50731b3..1de138357b95 100644 --- a/hw/misc/pvpanic-pci.c +++ b/hw/misc/pvpanic-pci.c @@ -21,7 +21,6 @@ #include "hw/misc/pvpanic.h" #include "qom/object.h" #include "hw/pci/pci_device.h" -#include "standard-headers/linux/pvpanic.h" =20 OBJECT_DECLARE_SIMPLE_TYPE(PVPanicPCIState, PVPANIC_PCI_DEVICE) =20 diff --git a/hw/misc/pvpanic.c b/hw/misc/pvpanic.c index 1540e9091a45..4915ef256e74 100644 --- a/hw/misc/pvpanic.c +++ b/hw/misc/pvpanic.c @@ -21,7 +21,6 @@ #include "hw/qdev-properties.h" #include "hw/misc/pvpanic.h" #include "qom/object.h" -#include "standard-headers/linux/pvpanic.h" =20 static void handle_event(int event) { diff --git a/include/hw/misc/pvpanic.h b/include/hw/misc/pvpanic.h index fab94165d03d..dffca827f77a 100644 --- a/include/hw/misc/pvpanic.h +++ b/include/hw/misc/pvpanic.h @@ -18,6 +18,9 @@ #include "exec/memory.h" #include "qom/object.h" =20 +#define PVPANIC_PANICKED (1 << 0) +#define PVPANIC_CRASH_LOADED (1 << 1) + #define TYPE_PVPANIC_ISA_DEVICE "pvpanic" #define TYPE_PVPANIC_PCI_DEVICE "pvpanic-pci" =20 diff --git a/include/standard-headers/linux/pvpanic.h b/include/standard-he= aders/linux/pvpanic.h deleted file mode 100644 index 54b7485390d3..000000000000 --- a/include/standard-headers/linux/pvpanic.h +++ /dev/null @@ -1,9 +0,0 @@ -/* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */ - -#ifndef __PVPANIC_H__ -#define __PVPANIC_H__ - -#define PVPANIC_PANICKED (1 << 0) -#define PVPANIC_CRASH_LOADED (1 << 1) - -#endif /* __PVPANIC_H__ */ diff --git a/scripts/update-linux-headers.sh b/scripts/update-linux-headers= .sh index 34295c0fe55b..555bdc8af2eb 100755 --- a/scripts/update-linux-headers.sh +++ b/scripts/update-linux-headers.sh @@ -215,8 +215,7 @@ for i in "$tmpdir"/include/linux/*virtio*.h \ "$tmpdir/include/linux/const.h" \ "$tmpdir/include/linux/kernel.h" \ "$tmpdir/include/linux/vhost_types.h" \ - "$tmpdir/include/linux/sysinfo.h" \ - "$tmpdir/include/misc/pvpanic.h"; do + "$tmpdir/include/linux/sysinfo.h"; do cp_portable "$i" "$output/include/standard-headers/linux" done mkdir -p "$output/include/standard-headers/drm" --=20 2.43.0 From nobody Wed Nov 27 02:25:14 2024 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 ARC-Seal: i=1; a=rsa-sha256; t=1701280138; cv=none; d=zohomail.com; s=zohoarc; b=UOZn16daxLVQmiOiS7eaoIanCtYjDu21ESBcV1jkna1RN2OB4fZSvtPMp7l7Q18qj15gsnRHQ+OlLQ5LtI+0mNoVGoPc98jS7N3Ce5/YkzLIHDdGMcbBlHnjcweBntlcFyrB+qhkWpfz7HbACY2iDQh+xtXJ6Fa6Yk+UeozfvQ8= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1701280138; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=nSvlHrmw6ieHnv2F8wdFNIO5pACC0q7TV4s7+F+pBqc=; b=WJV4sSjdQhSSfRfuEg7b0hgcVbfQCZGGbWlgWD8A98Q9K6FO1kFkzCO6lc8SJVZ6LmHDaHo9VD/CAo/sUWZyjgUbiRG9Dtn3uQoBDWII65SdZv3aWf7tf85ZcIGKKwyA2aeDxQdGdMZeEFDz13xEmMgW13vax8syVTqkns2hggw= 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 Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1701280138461906.9004946980583; Wed, 29 Nov 2023 09:48:58 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1r8Ofq-0004ZV-48; Wed, 29 Nov 2023 12:48:38 -0500 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 1r8Ofd-0004Wz-7W for qemu-devel@nongnu.org; Wed, 29 Nov 2023 12:48:22 -0500 Received: from todd.t-8ch.de ([159.69.126.157]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1r8OfJ-0003lb-7M for qemu-devel@nongnu.org; Wed, 29 Nov 2023 12:48:20 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=t-8ch.de; s=mail; t=1701280076; bh=YhHkeWbc5nFfWfy2ItSlzc1txCJ+IPYYdaC8HZ5Tsx4=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=leOwcD/KwnUIGnpqVN/q4w21qVd/HdasiPcKJPwpWN9xyFRYYZ7H7Hm3A1alwaOR9 m4cY2D8WF7sMRXPiFG8LyjyKsJQi00W9dLUuo2HAMeFTpJf0abkeDNxm7SRgfqweOL U0QsnaW7FEJMFMWjQVl4mNDrV5dpRGC/KTIRrf0I= From: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= Date: Wed, 29 Nov 2023 18:47:54 +0100 Subject: [PATCH v3 2/4] hw/misc/pvpanic: centralize definition of supported events MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20231129-pvpanic-shutdown-v3-2-c9a2892fc523@t-8ch.de> References: <20231129-pvpanic-shutdown-v3-0-c9a2892fc523@t-8ch.de> In-Reply-To: <20231129-pvpanic-shutdown-v3-0-c9a2892fc523@t-8ch.de> To: "Michael S. Tsirkin" , Cornelia Huck , Paolo Bonzini , Thomas Huth , Laurent Vivier Cc: qemu-devel@nongnu.org, =?utf-8?q?Thomas_Wei=C3=9Fschuh?= X-Mailer: b4 0.12.4 X-Developer-Signature: v=1; a=ed25519-sha256; t=1701280076; l=2424; i=thomas@t-8ch.de; s=20221212; h=from:subject:message-id; bh=YhHkeWbc5nFfWfy2ItSlzc1txCJ+IPYYdaC8HZ5Tsx4=; b=QraFRO33srrCNBA69DNv0Fr0qKEAq89kgKG35WIWLue+FKbm2YCELzUw3o0gDkL/9qUoYYlnS 8NuhWiGKW+bCmX1KeozbwGMyL8wZmPWhkK3kwOTj6cgVpenxYu63sQs X-Developer-Key: i=thomas@t-8ch.de; a=ed25519; pk=KcycQgFPX2wGR5azS7RhpBqedglOZVgRPfdFSPB1LNw= 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=159.69.126.157; envelope-from=thomas@t-8ch.de; helo=todd.t-8ch.de 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, SPF_HELO_NONE=0.001, T_SCC_BODY_TEXT_LINE=-0.01, T_SPF_TEMPERROR=0.01 autolearn=ham autolearn_force=no X-Spam_action: no action 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 @t-8ch.de) X-ZM-MESSAGEID: 1701280139069000008 The different components of pvpanic duplicate the list of supported events. Move it to the shared header file to minimize changes when new events are added. Signed-off-by: Thomas Wei=C3=9Fschuh --- hw/misc/pvpanic-isa.c | 2 +- hw/misc/pvpanic-pci.c | 2 +- hw/misc/pvpanic.c | 2 +- include/hw/misc/pvpanic.h | 1 + 4 files changed, 4 insertions(+), 3 deletions(-) diff --git a/hw/misc/pvpanic-isa.c b/hw/misc/pvpanic-isa.c index ef438a31fbe9..9a923b786907 100644 --- a/hw/misc/pvpanic-isa.c +++ b/hw/misc/pvpanic-isa.c @@ -101,7 +101,7 @@ static void build_pvpanic_isa_aml(AcpiDevAmlIf *adev, A= ml *scope) static Property pvpanic_isa_properties[] =3D { DEFINE_PROP_UINT16(PVPANIC_IOPORT_PROP, PVPanicISAState, ioport, 0x505= ), DEFINE_PROP_UINT8("events", PVPanicISAState, pvpanic.events, - PVPANIC_PANICKED | PVPANIC_CRASH_LOADED), + PVPANIC_EVENTS), DEFINE_PROP_END_OF_LIST(), }; =20 diff --git a/hw/misc/pvpanic-pci.c b/hw/misc/pvpanic-pci.c index 1de138357b95..8898d280d2ef 100644 --- a/hw/misc/pvpanic-pci.c +++ b/hw/misc/pvpanic-pci.c @@ -54,7 +54,7 @@ static void pvpanic_pci_realizefn(PCIDevice *dev, Error *= *errp) =20 static Property pvpanic_pci_properties[] =3D { DEFINE_PROP_UINT8("events", PVPanicPCIState, pvpanic.events, - PVPANIC_PANICKED | PVPANIC_CRASH_LOADED), + PVPANIC_EVENTS), DEFINE_PROP_END_OF_LIST(), }; =20 diff --git a/hw/misc/pvpanic.c b/hw/misc/pvpanic.c index 4915ef256e74..a4982cc5928e 100644 --- a/hw/misc/pvpanic.c +++ b/hw/misc/pvpanic.c @@ -26,7 +26,7 @@ static void handle_event(int event) { static bool logged; =20 - if (event & ~(PVPANIC_PANICKED | PVPANIC_CRASH_LOADED) && !logged) { + if (event & ~PVPANIC_EVENTS && !logged) { qemu_log_mask(LOG_GUEST_ERROR, "pvpanic: unknown event %#x.\n", ev= ent); logged =3D true; } diff --git a/include/hw/misc/pvpanic.h b/include/hw/misc/pvpanic.h index dffca827f77a..48f2ec4c86a1 100644 --- a/include/hw/misc/pvpanic.h +++ b/include/hw/misc/pvpanic.h @@ -20,6 +20,7 @@ =20 #define PVPANIC_PANICKED (1 << 0) #define PVPANIC_CRASH_LOADED (1 << 1) +#define PVPANIC_EVENTS (PVPANIC_PANICKED | PVPANIC_CRASH_LOADED) =20 #define TYPE_PVPANIC_ISA_DEVICE "pvpanic" #define TYPE_PVPANIC_PCI_DEVICE "pvpanic-pci" --=20 2.43.0 From nobody Wed Nov 27 02:25:14 2024 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 ARC-Seal: i=1; a=rsa-sha256; t=1701280139; cv=none; d=zohomail.com; s=zohoarc; b=S6MUpGu2iQzdn1z+/1T2XiSZruPDgEfhgIvAWDwt4LdB1BF+E/UGI986ileCL5HdSKJOg+ue47KfBm6bX1SUh/HMSaUHPPIdbpBCBvNFqAJLPLFR1SVUwIVLoQ0LdlqmUC+kT30wOXzEJV+oxg/UWTQ8M9TZQEyzq7skMiTcPo8= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1701280139; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=QobhfdKLSwxcvAVVLXSQGCZQxyD9L8r5NIvQV2vGZXQ=; b=Bx64/acJy3SsV20mNoJDWyiygBaWtWhtM04VE6orS4AbRTmAUTmgAQEUHCguPPusvufJaTCeWq6jiRBWA3b2rSFaA2C8MNnF8L94HtGpuxZvliRhx4fczxaDmamUmpFUNos0X1GiqKRKeFz0+7O/NoZAhVNOYj+VLVE2NDigW+w= 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 Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1701280139193645.1076896947917; Wed, 29 Nov 2023 09:48:59 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1r8Og0-0004qI-JU; Wed, 29 Nov 2023 12:48:44 -0500 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 1r8Ofe-0004YV-Ub for qemu-devel@nongnu.org; Wed, 29 Nov 2023 12:48:25 -0500 Received: from todd.t-8ch.de ([159.69.126.157]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1r8OfJ-0003lc-7R for qemu-devel@nongnu.org; Wed, 29 Nov 2023 12:48:22 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=t-8ch.de; s=mail; t=1701280076; bh=moRAQBSUgXdAyhlKpjaR+zzLM272+aksEalAgvUkYWs=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=oZna/uXcLOjZwByBkkmbLIdu+kbPJ4przkA1LKz5PUKz9iDmJH11lnSG6H6Cu2Up3 jnG2NOIe6bl8gQZpeFIR1FsrOPj8cKId9RwsltRQfTY5nIx4l/Gca7QHkI8iAQY6jA l6TxJ+3JeHouzlShA64Wnx7StcbeRJhgbwBt3COA= From: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= Date: Wed, 29 Nov 2023 18:47:55 +0100 Subject: [PATCH v3 3/4] tests/qtest/pvpanic: use centralized definition of supported events MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20231129-pvpanic-shutdown-v3-3-c9a2892fc523@t-8ch.de> References: <20231129-pvpanic-shutdown-v3-0-c9a2892fc523@t-8ch.de> In-Reply-To: <20231129-pvpanic-shutdown-v3-0-c9a2892fc523@t-8ch.de> To: "Michael S. Tsirkin" , Cornelia Huck , Paolo Bonzini , Thomas Huth , Laurent Vivier Cc: qemu-devel@nongnu.org, =?utf-8?q?Thomas_Wei=C3=9Fschuh?= X-Mailer: b4 0.12.4 X-Developer-Signature: v=1; a=ed25519-sha256; t=1701280076; l=2255; i=thomas@t-8ch.de; s=20221212; h=from:subject:message-id; bh=moRAQBSUgXdAyhlKpjaR+zzLM272+aksEalAgvUkYWs=; b=vKD8BUjx6OQ9aNk52UD17t1GH0RI3IdZorceNhURIjFkpoH7+R2yb9zNXDcfU2Uq88vtZJ+Xn cfsPjWvgvxYDxcCvVXBfAm2nQ9XdXTr4d2g/+VJ/OSN3XctiuOHpRlZ X-Developer-Key: i=thomas@t-8ch.de; a=ed25519; pk=KcycQgFPX2wGR5azS7RhpBqedglOZVgRPfdFSPB1LNw= 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=159.69.126.157; envelope-from=thomas@t-8ch.de; helo=todd.t-8ch.de 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, SPF_HELO_NONE=0.001, T_SCC_BODY_TEXT_LINE=-0.01, T_SPF_TEMPERROR=0.01 autolearn=ham autolearn_force=no X-Spam_action: no action 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 @t-8ch.de) X-ZM-MESSAGEID: 1701280140994000015 Avoid the necessity to update all tests when new events are added to the device. Acked-by: Thomas Huth Signed-off-by: Thomas Wei=C3=9Fschuh --- tests/qtest/pvpanic-pci-test.c | 5 +++-- tests/qtest/pvpanic-test.c | 5 +++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/tests/qtest/pvpanic-pci-test.c b/tests/qtest/pvpanic-pci-test.c index 2c05b376ba72..b372caf41dc0 100644 --- a/tests/qtest/pvpanic-pci-test.c +++ b/tests/qtest/pvpanic-pci-test.c @@ -16,6 +16,7 @@ #include "qapi/qmp/qdict.h" #include "libqos/pci.h" #include "libqos/pci-pc.h" +#include "hw/misc/pvpanic.h" #include "hw/pci/pci_regs.h" =20 static void test_panic_nopause(void) @@ -34,7 +35,7 @@ static void test_panic_nopause(void) bar =3D qpci_iomap(dev, 0, NULL); =20 qpci_memread(dev, bar, 0, &val, sizeof(val)); - g_assert_cmpuint(val, =3D=3D, 3); + g_assert_cmpuint(val, =3D=3D, PVPANIC_EVENTS); =20 val =3D 1; qpci_memwrite(dev, bar, 0, &val, sizeof(val)); @@ -67,7 +68,7 @@ static void test_panic(void) bar =3D qpci_iomap(dev, 0, NULL); =20 qpci_memread(dev, bar, 0, &val, sizeof(val)); - g_assert_cmpuint(val, =3D=3D, 3); + g_assert_cmpuint(val, =3D=3D, PVPANIC_EVENTS); =20 val =3D 1; qpci_memwrite(dev, bar, 0, &val, sizeof(val)); diff --git a/tests/qtest/pvpanic-test.c b/tests/qtest/pvpanic-test.c index 78f1cf8186b0..ccc603472f5d 100644 --- a/tests/qtest/pvpanic-test.c +++ b/tests/qtest/pvpanic-test.c @@ -10,6 +10,7 @@ #include "qemu/osdep.h" #include "libqtest.h" #include "qapi/qmp/qdict.h" +#include "hw/misc/pvpanic.h" =20 static void test_panic_nopause(void) { @@ -20,7 +21,7 @@ static void test_panic_nopause(void) qts =3D qtest_init("-device pvpanic -action panic=3Dnone"); =20 val =3D qtest_inb(qts, 0x505); - g_assert_cmpuint(val, =3D=3D, 3); + g_assert_cmpuint(val, =3D=3D, PVPANIC_EVENTS); =20 qtest_outb(qts, 0x505, 0x1); =20 @@ -43,7 +44,7 @@ static void test_panic(void) qts =3D qtest_init("-device pvpanic -action panic=3Dpause"); =20 val =3D qtest_inb(qts, 0x505); - g_assert_cmpuint(val, =3D=3D, 3); + g_assert_cmpuint(val, =3D=3D, PVPANIC_EVENTS); =20 qtest_outb(qts, 0x505, 0x1); =20 --=20 2.43.0 From nobody Wed Nov 27 02:25:14 2024 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 ARC-Seal: i=1; a=rsa-sha256; t=1701280137; cv=none; d=zohomail.com; s=zohoarc; b=SIF/AqhN9N5VWVIYR0A8UIiwOza0JQz0I2N0YU7FpIu615wXFR+83hvNaupd9Epu+TXF91Tf5IxjsMgN42HERdWVHfHJx7hydqLExqYMmHC8sO5IVCSo3jEHerDbLtkSNM5AWkHSb8g/G27BWZTbXImTew4mzwzu/0nQW5rrkCM= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1701280137; h=Content-Type:Content-Transfer-Encoding:Cc:Cc:Date:Date:From:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:MIME-Version:Message-ID:References:Sender:Subject:Subject:To:To:Message-Id:Reply-To; bh=ZZ9p2JkWOcchXP7QabOcYgghgXeFscM87SwTKemTdsY=; b=ez7ycAyzAKG0afiMePOyqfiHjFSb+jLGPC9aGalCl12BR5myEpPBHBmWJo2MoY6eYo319TQR9Xm/Pd+o7Qp2ah0VCQoLoGfaS1r/XdKwwUJ01m6gDLS4rNriNkb2F/0nWRpmemmZ8QqfUYXMTjQEiir/et/LnWnvrfYKan37itE= 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 Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1701280136952168.6101816707262; Wed, 29 Nov 2023 09:48:56 -0800 (PST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1r8Ofz-0004mC-Jt; Wed, 29 Nov 2023 12:48:43 -0500 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 1r8Ofg-0004YY-Rg for qemu-devel@nongnu.org; Wed, 29 Nov 2023 12:48:25 -0500 Received: from todd.t-8ch.de ([2a01:4f8:c010:41de::1]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1r8OfJ-0003ld-7N for qemu-devel@nongnu.org; Wed, 29 Nov 2023 12:48:24 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=t-8ch.de; s=mail; t=1701280076; bh=hkWFoazCStKhexD0vSbfqqc3avb43oj4ZmJz8Qsbpmc=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=cAFogKNIUFnUG/VGEI/w01dbRFd/qC2m4cBv8KBteB+uS8oK6jHJmMcWRu4pwnpJt utuM4Aki4wfH+nW2NjsuB/n80yn2gUlkBEgIBOcD2vpRS39iA2Ckgpynv+oyk1MC/I lWiElvhe3bbLa+EJyOhT+PtJ3pvTHUK5uZNFlUY8= From: =?utf-8?q?Thomas_Wei=C3=9Fschuh?= Date: Wed, 29 Nov 2023 18:47:56 +0100 Subject: [PATCH v3 4/4] hw/misc/pvpanic: add support for normal shutdowns MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Message-Id: <20231129-pvpanic-shutdown-v3-4-c9a2892fc523@t-8ch.de> References: <20231129-pvpanic-shutdown-v3-0-c9a2892fc523@t-8ch.de> In-Reply-To: <20231129-pvpanic-shutdown-v3-0-c9a2892fc523@t-8ch.de> To: "Michael S. Tsirkin" , Cornelia Huck , Paolo Bonzini , Thomas Huth , Laurent Vivier Cc: qemu-devel@nongnu.org, =?utf-8?q?Thomas_Wei=C3=9Fschuh?= X-Mailer: b4 0.12.4 X-Developer-Signature: v=1; a=ed25519-sha256; t=1701280076; l=1914; i=thomas@t-8ch.de; s=20221212; h=from:subject:message-id; bh=hkWFoazCStKhexD0vSbfqqc3avb43oj4ZmJz8Qsbpmc=; b=dOwbGRnNb79IBG5SuZQnF2/9AwUo/KtQ1S/zjF8R4Frny1MCw+sTshKoyMU74bkX5o/T7qMIu A1oyK8EkVftD66mPBryr1ZIW8HN0v/QGPFGcPqN+chhLh8RSljaz+xv X-Developer-Key: i=thomas@t-8ch.de; a=ed25519; pk=KcycQgFPX2wGR5azS7RhpBqedglOZVgRPfdFSPB1LNw= 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=2a01:4f8:c010:41de::1; envelope-from=thomas@t-8ch.de; helo=todd.t-8ch.de 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, SPF_HELO_NONE=0.001, T_SCC_BODY_TEXT_LINE=-0.01, T_SPF_TEMPERROR=0.01 autolearn=ham autolearn_force=no X-Spam_action: no action 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 @t-8ch.de) X-ZM-MESSAGEID: 1701280139062000007 Shutdown requests are normally hardware dependent. By extending pvpanic to also handle shutdown requests, guests can submit such requests with an easily implementable and cross-platform mechanism. Signed-off-by: Thomas Wei=C3=9Fschuh --- docs/specs/pvpanic.rst | 2 ++ hw/misc/pvpanic.c | 5 +++++ include/hw/misc/pvpanic.h | 3 ++- 3 files changed, 9 insertions(+), 1 deletion(-) diff --git a/docs/specs/pvpanic.rst b/docs/specs/pvpanic.rst index f894bc19555f..796cc0348a38 100644 --- a/docs/specs/pvpanic.rst +++ b/docs/specs/pvpanic.rst @@ -29,6 +29,8 @@ bit 1 a guest panic has happened and will be handled by the guest; the host should record it or report it, but should not affect the execution of the guest. +bit 2 + a guest shutdown has happened and should be processed by the host =20 PCI Interface ------------- diff --git a/hw/misc/pvpanic.c b/hw/misc/pvpanic.c index a4982cc5928e..246f9ae4e992 100644 --- a/hw/misc/pvpanic.c +++ b/hw/misc/pvpanic.c @@ -40,6 +40,11 @@ static void handle_event(int event) qemu_system_guest_crashloaded(NULL); return; } + + if (event & PVPANIC_SHUTDOWN) { + qemu_system_shutdown_request(SHUTDOWN_CAUSE_GUEST_SHUTDOWN); + return; + } } =20 /* return supported events on read */ diff --git a/include/hw/misc/pvpanic.h b/include/hw/misc/pvpanic.h index 48f2ec4c86a1..9e36a02d5a4f 100644 --- a/include/hw/misc/pvpanic.h +++ b/include/hw/misc/pvpanic.h @@ -20,7 +20,8 @@ =20 #define PVPANIC_PANICKED (1 << 0) #define PVPANIC_CRASH_LOADED (1 << 1) -#define PVPANIC_EVENTS (PVPANIC_PANICKED | PVPANIC_CRASH_LOADED) +#define PVPANIC_SHUTDOWN (1 << 2) +#define PVPANIC_EVENTS (PVPANIC_PANICKED | PVPANIC_CRASH_LOADED | PVPANIC_= SHUTDOWN) =20 #define TYPE_PVPANIC_ISA_DEVICE "pvpanic" #define TYPE_PVPANIC_PCI_DEVICE "pvpanic-pci" --=20 2.43.0