From nobody Sun Nov 16 04:03:39 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=1743507905; cv=none; d=zohomail.com; s=zohoarc; b=FDyIqcDB38Waxq2X4NumCQsrK1e8xeFCrBdjGe/GWsf+iTYwYFsrERb/YIoe5wSbtVuTijK0UHJly3VX8U4FuaE6J563EoKznhm8YMe6ZLyxbjF31HkXme5K1uFAw7qumy1vT5XIBhAe8J/uTLyqHLRzrMjDsEEZmiBoRGwRYHQ= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1743507905; h=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=ugeKs6g/oa3KlXrLQxSFvqiVP+uJ1JdglOF1rGtI7eo=; b=V0RPyOeq4wyqTfuvZWgmtWiswnGNWGmwNGz4c3RpfzY1VxJLnSHawcbcWCPC7S2L1iR8hLYZM6nMIe0iDCxuq6cIujWvBThhXi7W7qgdSRSAEmVbsZGR+bXqrQDlBCQDXiJ5XgIzDRMNK8//y9aJoR/6ly/DBlrmLnaFQsie8iI= 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 1743507905704182.52465566770888; Tue, 1 Apr 2025 04:45:05 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tza2h-0002Eo-Md; Tue, 01 Apr 2025 07:44:33 -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 1tza2a-0002CU-0c for qemu-devel@nongnu.org; Tue, 01 Apr 2025 07:44:24 -0400 Received: from mail-pl1-x62b.google.com ([2607:f8b0:4864:20::62b]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tza2Y-0003gO-8w for qemu-devel@nongnu.org; Tue, 01 Apr 2025 07:44:23 -0400 Received: by mail-pl1-x62b.google.com with SMTP id d9443c01a7336-22403cbb47fso112603525ad.0 for ; Tue, 01 Apr 2025 04:44:21 -0700 (PDT) Received: from wheely.local0.net ([203.185.207.94]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-2291eee11b7sm86408135ad.86.2025.04.01.04.44.18 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 01 Apr 2025 04:44:20 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1743507861; x=1744112661; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=ugeKs6g/oa3KlXrLQxSFvqiVP+uJ1JdglOF1rGtI7eo=; b=RtfP1AxieG3IT4CPcG7ehSCmRglC03IrEPLVDYWTpfxb5RSDGgRzT3SHHzdgIz3LuT oglh1a5BB2grZ3Xs3NvNVPEZQU7NLit4PRSMa0WREQ0GRJjP2Pg5Chl+l6ZC+1yb/3RK ReFemNxPAOfS5qEAIphK+4mbjqu38pDp0o3ms+zl7/izkenqZSlucB+Dv9KzC5+/Pbaq OVwlG8+6nQl4zipiHytjPHdbWsofNT0VAwlSG1usKmRImDSgsMiwRsD61iYglOMuO4DI 0n7d2lpOWzrSVGdqIAz4vdLslyWwe96GNHa+spJqtic887cfeLBXa8F7a2BQs4IOFoxf 06qQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1743507861; x=1744112661; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=ugeKs6g/oa3KlXrLQxSFvqiVP+uJ1JdglOF1rGtI7eo=; b=BRTICasGnQQYxpK98abH8Jm6nfWFkvrpfZqQFgdsyWjXh1DBwnr8OLlF8B81Hn9QdT bttNj6E+qd2DAV/n50EhZnKwO4iNtj0eZedMSdS+HEICwgmDd8ZKNepV2hnSGYz9ntsY O09X9/0I+St7ETVQGB+28H6JEtdR0QaX6xyGK6OjC37rhTDhbSvTlEV71eTKbg4HjJM+ jeXi96S8kQhCNBvXD2Bcpmic68kyulAWW4ZDie9xf6MFqSQ3S2lsgFp5Pz/s+tAJ1Abg ztwbG0lBwbeQFJS0hTeYANox01eAJjJHbkvcQsf9+18hZuwB/VoOqK1XQwIel7K+ugkm jkzg== X-Forwarded-Encrypted: i=1; AJvYcCXFAeew/uLeb6DER0S0W0gS/hw+BejyzbII+CVZQzLEfxQ4SIgco1/d0enchOe9P5SjYsSUXo5EIV9d@nongnu.org X-Gm-Message-State: AOJu0Yyvu62T0SLMLvQHVquHPsmt97GEf4LaIjo0/hcJZuEA7Uis+3f+ HUprcT2clAQk9HRZYMFdHLRe9RI/Pz9FsyKP/qtKSaYbMDM5zwtR X-Gm-Gg: ASbGncvxmTYrsF5zITuttU9XlvHwA2OoKgR0cOe4KyX/HLV0f3keBorDubR/EEmCTtD 3roJ06CGWztKc9f8S/7Fq3lqn69X1S/RZDBDdpV9Hket1/tuyPnfXVZ2BaPjcSGbTIkaqbkSpcw ugKNOIvE38dKC0oGQwRoHVZI1ng69SxiAJL8ZxoiJUonpJN01mb/BVDj7eUnBbDYIN35t8jIYw8 R3lPdaNfRpVmpndTCeGD855+1jQfPUBrFhD4yvcKmXaZLuevFH1Xm4Za75WFXnNPatx2Cxquzpv Fu+2HnBdspg5L0biEFhafIFpWLuHQCdPINw/vJbkooYf7j0+Bg== X-Google-Smtp-Source: AGHT+IGPvWpmCXwyG3dfnlADjf2grBr8OkW9krRGUFFWw8VDMLop9+jj4kAZAMKX06uAb3kQuTYM1w== X-Received: by 2002:a17:903:1b27:b0:224:78e:4eb4 with SMTP id d9443c01a7336-2292f9f0a70mr184383315ad.39.1743507860799; Tue, 01 Apr 2025 04:44:20 -0700 (PDT) From: Nicholas Piggin To: Corey Minyard Cc: Nicholas Piggin , qemu-devel@nongnu.org Subject: [PATCH v2 1/5] ipmi/pci-ipmi-bt: Rename copy-paste variables Date: Tue, 1 Apr 2025 21:44:08 +1000 Message-ID: <20250401114412.676636-2-npiggin@gmail.com> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250401114412.676636-1-npiggin@gmail.com> References: <20250401114412.676636-1-npiggin@gmail.com> 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::62b; envelope-from=npiggin@gmail.com; helo=mail-pl1-x62b.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-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: 1743507908240019100 Content-Type: text/plain; charset="utf-8" IPMI drivers use p/k suffix in variable names depending on bt or kcs. The pci bt driver must have come from the kcs driver because it's still using k suffixes in some cases. Rename. Signed-off-by: Nicholas Piggin Reviewed-by: Philippe Mathieu-Daud=C3=A9 --- hw/ipmi/pci_ipmi_bt.c | 38 +++++++++++++++++++------------------- 1 file changed, 19 insertions(+), 19 deletions(-) diff --git a/hw/ipmi/pci_ipmi_bt.c b/hw/ipmi/pci_ipmi_bt.c index afeea6f3031..a3b742d22c9 100644 --- a/hw/ipmi/pci_ipmi_bt.c +++ b/hw/ipmi/pci_ipmi_bt.c @@ -38,49 +38,49 @@ struct PCIIPMIBTDevice { uint32_t uuid; }; =20 -static void pci_ipmi_raise_irq(IPMIBT *ik) +static void pci_ipmi_raise_irq(IPMIBT *ib) { - PCIIPMIBTDevice *pik =3D ik->opaque; + PCIIPMIBTDevice *pib =3D ib->opaque; =20 - pci_set_irq(&pik->dev, true); + pci_set_irq(&pib->dev, true); } =20 -static void pci_ipmi_lower_irq(IPMIBT *ik) +static void pci_ipmi_lower_irq(IPMIBT *ib) { - PCIIPMIBTDevice *pik =3D ik->opaque; + PCIIPMIBTDevice *pib =3D ib->opaque; =20 - pci_set_irq(&pik->dev, false); + pci_set_irq(&pib->dev, false); } =20 static void pci_ipmi_bt_realize(PCIDevice *pd, Error **errp) { Error *err =3D NULL; - PCIIPMIBTDevice *pik =3D PCI_IPMI_BT(pd); + PCIIPMIBTDevice *pib =3D PCI_IPMI_BT(pd); IPMIInterface *ii =3D IPMI_INTERFACE(pd); IPMIInterfaceClass *iic =3D IPMI_INTERFACE_GET_CLASS(ii); =20 - if (!pik->bt.bmc) { + if (!pib->bt.bmc) { error_setg(errp, "IPMI device requires a bmc attribute to be set"); return; } =20 - pik->uuid =3D ipmi_next_uuid(); + pib->uuid =3D ipmi_next_uuid(); =20 - pik->bt.bmc->intf =3D ii; - pik->bt.opaque =3D pik; + pib->bt.bmc->intf =3D ii; + pib->bt.opaque =3D pib; =20 pci_config_set_prog_interface(pd->config, 0x02); /* BT */ pci_config_set_interrupt_pin(pd->config, 0x01); - pik->bt.use_irq =3D 1; - pik->bt.raise_irq =3D pci_ipmi_raise_irq; - pik->bt.lower_irq =3D pci_ipmi_lower_irq; + pib->bt.use_irq =3D 1; + pib->bt.raise_irq =3D pci_ipmi_raise_irq; + pib->bt.lower_irq =3D pci_ipmi_lower_irq; =20 iic->init(ii, 8, &err); if (err) { error_propagate(errp, err); return; } - pci_register_bar(pd, 0, PCI_BASE_ADDRESS_SPACE_IO, &pik->bt.io); + pci_register_bar(pd, 0, PCI_BASE_ADDRESS_SPACE_IO, &pib->bt.io); } =20 const VMStateDescription vmstate_PCIIPMIBTDevice =3D { @@ -96,16 +96,16 @@ const VMStateDescription vmstate_PCIIPMIBTDevice =3D { =20 static void pci_ipmi_bt_instance_init(Object *obj) { - PCIIPMIBTDevice *pik =3D PCI_IPMI_BT(obj); + PCIIPMIBTDevice *pib =3D PCI_IPMI_BT(obj); =20 - ipmi_bmc_find_and_link(obj, (Object **) &pik->bt.bmc); + ipmi_bmc_find_and_link(obj, (Object **) &pib->bt.bmc); } =20 static void *pci_ipmi_bt_get_backend_data(IPMIInterface *ii) { - PCIIPMIBTDevice *pik =3D PCI_IPMI_BT(ii); + PCIIPMIBTDevice *pib =3D PCI_IPMI_BT(ii); =20 - return &pik->bt; + return &pib->bt; } =20 static void pci_ipmi_bt_class_init(ObjectClass *oc, void *data) --=20 2.47.1 From nobody Sun Nov 16 04:03:39 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=1743507933; cv=none; d=zohomail.com; s=zohoarc; b=ctPzbvG8pj3Vbc5HRglWzYCuaI+0IJeC2Q4OCUndlxWAD+flOsIW/aBKEWP6UDCH9qsLHoLenfp4xj13kUnAKMZQddMVuE6oOKYp92NYyBkpGt+ptXicBdmiHbhS1foXNYQO6uqnKs1/Q5dSxe/rdnY+MqEeondU1YPZI628Kls= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1743507933; h=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=abqmG11qmy0obbVwbtOGTx26xYrlI7gTbGbsVaL0y1o=; b=BegY09g9lpM99g40PTTq+5X0N4O9I44hFeVSzoGzhsI7UJQeQ76WjVcaQnuVo/MSshSL7r0rskTxwrlk/umrMwMKUCAP6Ix1p2XR2Uqcos8+qqz46jm3jZXdB21bgyK6TcbzotCKi+Qlss9p0LmomWdt1W95h7rs+fYZWLuvoRo= 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 1743507933307502.54328661941656; Tue, 1 Apr 2025 04:45:33 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tza2o-0002HW-QW; Tue, 01 Apr 2025 07:44:38 -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 1tza2c-0002Eq-IM for qemu-devel@nongnu.org; Tue, 01 Apr 2025 07:44:27 -0400 Received: from mail-pl1-x635.google.com ([2607:f8b0:4864:20::635]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tza2a-0003gq-L8 for qemu-devel@nongnu.org; Tue, 01 Apr 2025 07:44:26 -0400 Received: by mail-pl1-x635.google.com with SMTP id d9443c01a7336-227aaa82fafso103660275ad.2 for ; Tue, 01 Apr 2025 04:44:24 -0700 (PDT) Received: from wheely.local0.net ([203.185.207.94]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-2291eee11b7sm86408135ad.86.2025.04.01.04.44.21 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 01 Apr 2025 04:44:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1743507863; x=1744112663; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=abqmG11qmy0obbVwbtOGTx26xYrlI7gTbGbsVaL0y1o=; b=DOqCuaBLwqAA7sUb8M/PiZKZLkKMr9m/V8gR7j412pLqNX/tM7pRSH6josdL/5pwRk 1aE0xyJt8ZUxQkDKZbi5zFKqlA3QrOGQsJ2W0Rqwb345aCrPr7boXySb/x4hEpx/kV6W FIPxTSN9INUVjLYeqJ5DmaousZmdN1dnTC/15P73SzuE71VoJi9roZ4Wso41GoKZP7N4 pJesRGuoQyUSBbSg9WCemdk1OcllXad1i8mHtvPF8mlAFw3ZXuhXE+KsDbh2pmUrXWDB upHTdoSl8pK8WKeYjHcK/KPqXMhLrhs6SoZ262Zut+PunfLH/4LCrNu9F0/XF8UvBSpZ TheA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1743507863; x=1744112663; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=abqmG11qmy0obbVwbtOGTx26xYrlI7gTbGbsVaL0y1o=; b=qobsJEUDweB9Nxc0nauAkjx16np+n958wzXZm0pgFyY+T3xEQElA8iXaz5M17iashe 6bhaem6m6c1zFtA/uxnFwrDoqdwO8IqfON3aHwC4aWLS+3QTeLg8aa+bEtvPOIZNLMH1 jqqdC7bO5vSxqZqf1j62mBD64CTTYQUNp6Aavkww+KvqpkAuDdo7EbIqi3mlTUODzgm4 Vu+8v2xfKkrM1Pto8oS4SBPpSGckj00phkJXMJHu5YSvAaoyazHb7+FUOikBFC0JdDuh tihpxPrquhjtR1XEi8f4YXAdAAPuFo7RgsOffbYUdDLnmKCehhUJAjxMlHrkr+ofa+SB paQg== X-Forwarded-Encrypted: i=1; AJvYcCWpXwudL3Ii/a8YIZQLYOXLmgmSPifACwM7o5+tGAQs25tKgjkB8kfjnOL1CUZlv6Jqry8shNmQ6Ijg@nongnu.org X-Gm-Message-State: AOJu0YyQYxtK66jPzWFWHKC77HQODRfpyzBa8pmjyNqUO7mnhDByRoIO a4hP0N3mm/6TxoHoMuqR4L1t9Ylzrtdrx+EJm3z8QsyKJ9pyqS5OXMt/rQ== X-Gm-Gg: ASbGnctdHZF+LaDTvZOD8uBy6EkS7Qotw7SLo/boR/wwd8oQt7fTICOAKMXNwxRqpbf jq6hU6SywSIjJzV2NbFpVgMpVPNuxCeVDxaTFpLC8dPNLqZ95P4Eno3ow2svEQv9ololP3yhuA7 3AeaZ9Fm9fKVz5ekiUfVX6Z7PhXpP2MtKNsEUuzYAwbFDWSFfHl85WTs4zTSbJ3dD+BcxpRiKQA S1c9InLu+U2m8vAvN+PU28DZOgDCGNgzQfkvrxxDUmo3WrPuBd2OaJsiBSM2j+zYQtMzlQt625B b13mPzm4nQ8Cm94l1N9d6auirsCdvj8VCZcIm+/vLNKO/3hAgA== X-Google-Smtp-Source: AGHT+IGdWXcxpWODOJ2PeLcuKR/yKK2AzOx+BgpEzsnCaQKOoGfp6gPmGGLi3QbBYhVBkA9tMGgtaA== X-Received: by 2002:a17:902:e786:b0:223:64bb:f657 with SMTP id d9443c01a7336-2292f9eb871mr193860735ad.46.1743507863254; Tue, 01 Apr 2025 04:44:23 -0700 (PDT) From: Nicholas Piggin To: Corey Minyard Cc: Nicholas Piggin , qemu-devel@nongnu.org Subject: [PATCH v2 2/5] ipmi: add fwinfo to pci ipmi devices Date: Tue, 1 Apr 2025 21:44:09 +1000 Message-ID: <20250401114412.676636-3-npiggin@gmail.com> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250401114412.676636-1-npiggin@gmail.com> References: <20250401114412.676636-1-npiggin@gmail.com> 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::635; envelope-from=npiggin@gmail.com; helo=mail-pl1-x635.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-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: 1743507933819019000 Content-Type: text/plain; charset="utf-8" This requires some adjustments to callers to avoid possible behaviour changes for PCI devices. Signed-off-by: Nicholas Piggin --- include/hw/ipmi/ipmi.h | 5 +++++ hw/acpi/ipmi.c | 2 +- hw/ipmi/isa_ipmi_bt.c | 1 + hw/ipmi/isa_ipmi_kcs.c | 1 + hw/ipmi/pci_ipmi_bt.c | 12 ++++++++++++ hw/ipmi/pci_ipmi_kcs.c | 11 +++++++++++ hw/smbios/smbios_type_38.c | 6 +++++- 7 files changed, 36 insertions(+), 2 deletions(-) diff --git a/include/hw/ipmi/ipmi.h b/include/hw/ipmi/ipmi.h index 77a7213ed93..71c4efac8cd 100644 --- a/include/hw/ipmi/ipmi.h +++ b/include/hw/ipmi/ipmi.h @@ -90,6 +90,11 @@ typedef struct IPMIFwInfo { } memspace; =20 int interrupt_number; + enum { + IPMI_NO_IRQ =3D 0, + IPMI_ISA_IRQ, + IPMI_PCI_IRQ, + } irq; enum { IPMI_LEVEL_IRQ, IPMI_EDGE_IRQ diff --git a/hw/acpi/ipmi.c b/hw/acpi/ipmi.c index a20e57d465c..c81cbd2f158 100644 --- a/hw/acpi/ipmi.c +++ b/hw/acpi/ipmi.c @@ -55,7 +55,7 @@ static Aml *aml_ipmi_crs(IPMIFwInfo *info) abort(); } =20 - if (info->interrupt_number) { + if (info->irq =3D=3D IPMI_ISA_IRQ && info->interrupt_number) { aml_append(crs, aml_irq_no_flags(info->interrupt_number)); } =20 diff --git a/hw/ipmi/isa_ipmi_bt.c b/hw/ipmi/isa_ipmi_bt.c index a1b66d5ee82..b5556436b82 100644 --- a/hw/ipmi/isa_ipmi_bt.c +++ b/hw/ipmi/isa_ipmi_bt.c @@ -49,6 +49,7 @@ static void isa_ipmi_bt_get_fwinfo(struct IPMIInterface *= ii, IPMIFwInfo *info) ISAIPMIBTDevice *iib =3D ISA_IPMI_BT(ii); =20 ipmi_bt_get_fwinfo(&iib->bt, info); + info->irq =3D IPMI_ISA_IRQ; info->interrupt_number =3D iib->isairq; info->i2c_slave_address =3D iib->bt.bmc->slave_addr; info->uuid =3D iib->uuid; diff --git a/hw/ipmi/isa_ipmi_kcs.c b/hw/ipmi/isa_ipmi_kcs.c index d9ebdd5371f..326115f51bb 100644 --- a/hw/ipmi/isa_ipmi_kcs.c +++ b/hw/ipmi/isa_ipmi_kcs.c @@ -49,6 +49,7 @@ static void isa_ipmi_kcs_get_fwinfo(IPMIInterface *ii, IP= MIFwInfo *info) ISAIPMIKCSDevice *iik =3D ISA_IPMI_KCS(ii); =20 ipmi_kcs_get_fwinfo(&iik->kcs, info); + info->irq =3D IPMI_ISA_IRQ; info->interrupt_number =3D iik->isairq; info->uuid =3D iik->uuid; } diff --git a/hw/ipmi/pci_ipmi_bt.c b/hw/ipmi/pci_ipmi_bt.c index a3b742d22c9..33ff7190ee8 100644 --- a/hw/ipmi/pci_ipmi_bt.c +++ b/hw/ipmi/pci_ipmi_bt.c @@ -38,6 +38,17 @@ struct PCIIPMIBTDevice { uint32_t uuid; }; =20 +static void pci_ipmi_bt_get_fwinfo(struct IPMIInterface *ii, IPMIFwInfo *i= nfo) +{ + PCIIPMIBTDevice *pib =3D PCI_IPMI_BT(ii); + + ipmi_bt_get_fwinfo(&pib->bt, info); + info->irq =3D IPMI_PCI_IRQ; + info->interrupt_number =3D pci_intx(&pib->dev); + info->i2c_slave_address =3D pib->bt.bmc->slave_addr; + info->uuid =3D pib->uuid; +} + static void pci_ipmi_raise_irq(IPMIBT *ib) { PCIIPMIBTDevice *pib =3D ib->opaque; @@ -125,6 +136,7 @@ static void pci_ipmi_bt_class_init(ObjectClass *oc, voi= d *data) =20 iic->get_backend_data =3D pci_ipmi_bt_get_backend_data; ipmi_bt_class_init(iic); + iic->get_fwinfo =3D pci_ipmi_bt_get_fwinfo; } =20 static const TypeInfo pci_ipmi_bt_info =3D { diff --git a/hw/ipmi/pci_ipmi_kcs.c b/hw/ipmi/pci_ipmi_kcs.c index 05ba97ec58f..6673b2088ef 100644 --- a/hw/ipmi/pci_ipmi_kcs.c +++ b/hw/ipmi/pci_ipmi_kcs.c @@ -38,6 +38,16 @@ struct PCIIPMIKCSDevice { uint32_t uuid; }; =20 +static void pci_ipmi_bt_get_fwinfo(struct IPMIInterface *ii, IPMIFwInfo *i= nfo) +{ + PCIIPMIKCSDevice *pik =3D PCI_IPMI_KCS(ii); + + ipmi_kcs_get_fwinfo(&pik->kcs, info); + info->irq =3D IPMI_PCI_IRQ; + info->interrupt_number =3D pci_intx(&pik->dev); + info->uuid =3D pik->uuid; +} + static void pci_ipmi_raise_irq(IPMIKCS *ik) { PCIIPMIKCSDevice *pik =3D ik->opaque; @@ -125,6 +135,7 @@ static void pci_ipmi_kcs_class_init(ObjectClass *oc, vo= id *data) =20 iic->get_backend_data =3D pci_ipmi_kcs_get_backend_data; ipmi_kcs_class_init(iic); + iic->get_fwinfo =3D pci_ipmi_kcs_get_fwinfo; } =20 static const TypeInfo pci_ipmi_kcs_info =3D { diff --git a/hw/smbios/smbios_type_38.c b/hw/smbios/smbios_type_38.c index 168b886647d..2823929c258 100644 --- a/hw/smbios/smbios_type_38.c +++ b/hw/smbios/smbios_type_38.c @@ -72,7 +72,11 @@ static void smbios_build_one_type_38(IPMIFwInfo *info) " SMBIOS, ignoring this entry.", info->register_spaci= ng); return; } - t->interrupt_number =3D info->interrupt_number; + if (info->irq =3D=3D IPMI_ISA_IRQ) { + t->interrupt_number =3D info->interrupt_number; + } else { + t->interrupt_number =3D 0; + } =20 SMBIOS_BUILD_TABLE_POST; } --=20 2.47.1 From nobody Sun Nov 16 04:03:39 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=1743508005; cv=none; d=zohomail.com; s=zohoarc; b=YqmFiu1NiRTMLjCxFpDdvY+dZQll98YhRUtyiTC0C8md3lg6vpxWnWkphdq9v2/w+GHSl7IGY4uDGg526KRqzFIDulABJWjEoJKsMmGf7VmXT9HXbCFeKLhT7NdS9wL0ppXdwFKFwGQDFbMWC9wiNhskQk/fa/xyCj+xV6qmuwU= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1743508005; h=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=5vyaNdF0ED2Kh0ojZF34u+l4QmvwlnYjuPhl4oykfjA=; b=V8z6TWFK019x61b1PYrlyloS1S0DX9S8Npdm+FeNtvMza25ZgvYjUvHLFv6UhfBJaOdj/PdOXLFgMA3vIMbMpsHla2zyK8QYrxEActAiC83tbsEPz0g18CssMyNGj2TdR1bG3ztm+4CakuMun2uugkcPN7VLxKm2pga/0pvjiV0= 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 1743508005511999.68068471564; Tue, 1 Apr 2025 04:46:45 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tza2t-0002Jc-1d; Tue, 01 Apr 2025 07:44:43 -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 1tza2f-0002FD-3b for qemu-devel@nongnu.org; Tue, 01 Apr 2025 07:44:31 -0400 Received: from mail-pl1-x631.google.com ([2607:f8b0:4864:20::631]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tza2d-0003hA-3k for qemu-devel@nongnu.org; Tue, 01 Apr 2025 07:44:28 -0400 Received: by mail-pl1-x631.google.com with SMTP id d9443c01a7336-22403cbb47fso112604695ad.0 for ; Tue, 01 Apr 2025 04:44:26 -0700 (PDT) Received: from wheely.local0.net ([203.185.207.94]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-2291eee11b7sm86408135ad.86.2025.04.01.04.44.23 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 01 Apr 2025 04:44:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1743507866; x=1744112666; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=5vyaNdF0ED2Kh0ojZF34u+l4QmvwlnYjuPhl4oykfjA=; b=FOMGuIlG0a8dDmwhDC+ZBbq2ovfoiEvunrMtswA5seQ0JTLwlpSZB1jkhP9lnacDkE hecnR4MhsHwBbZ8gn2xbBYJ1N/HB6Gqq8/qjRduyZ8nahhiOkOmUvqd8JDgYCkCtnmX6 aqzEtuZxhqESLb19vT1dcPw+8qtvHQOHnIEJLhwMmCdhNdm77U5hE+pQRimER2mHrPky N88nFFRlUdrUYPdDRe5iqefD0sD597EGBpGXafkqtJRgTLO2HvvCe7hy+LL7mAra7wOc Duzfp62+jAVWRSTC0ucyvDd6GLRoz1GRuL+SM3lbNRKD4b8IKeZrbMe7KycPxnWhVl5p BQew== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1743507866; x=1744112666; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=5vyaNdF0ED2Kh0ojZF34u+l4QmvwlnYjuPhl4oykfjA=; b=wBFZ9fREv+rtlhH9KuQErelHoXNvSRMMR729FrAq5f3b3GX4sPkvBY5aKLyPna+pZM O9msJHIzsrga0WeDiKUhqbfxmLTVtBswLav++1B03zbkiDRoLL4NTDWOo7NaGDwRlpsP GpWvvnrfZ2WFDzh0f3w5Kq3FDJhHrEzk6hGnk4ovr2SxlVWgGDeLMsDofT0mskjGTx88 h4JHPpq6Ls32dujq3dljV1vjXmhtRMuaxa+JFFWagXqdMvnTCpiRJitXlyuNdwi7Rc3m eDx0dAIAcLhpTIdMI0lGy4CI8djj1Xn71e1OfM+O6miZFXeo/MJJMB1GiMG0uWwulJ31 qMLQ== X-Forwarded-Encrypted: i=1; AJvYcCVLC4D8Z3uYNqYjWrdfz9oLwrAcz4CAlhkPeRvCMP//01Tc72xMUzxo4z3yze5dIelftl2VtzvwLXIh@nongnu.org X-Gm-Message-State: AOJu0YwQDIGWde11B705oRvhpiI22I8e9MNQoH4EQ5HiYM+mtWLYH0ll tE1NAGD+DMiRPM93CuwFZffFJGoSDJBE8UCdwlkfK2870P8yk9bE1LwcNg== X-Gm-Gg: ASbGncuapo38hGzCRyE9KxnW2c6mLCX4ynzhJSekNIQ/CmUi4ixx23brx5fHbG539wc IzI1jp4Sog9n/y87LjAh0v3T2gU42Eo9g+OL+ZpxnEPhpBvIrQkvNtH7O264j2fTFuZbuf4p2WA 2b1mvUrEPDCGvXjPUqrmg/NZOLKV86V5xN02TBmzyUBV4BP88hkbz1VJR/c3ZI/pxLgGOu+8e19 u0CFotdJLyYX01Q8zufadQK7EB4CtPPkT+wX9RaGpWEf3vLAtFh4ascX/e9E5wXuZTm6EopCmTX xR/kisHKUy1R3wrBzOcNqx3SM3Znw602nTi4ZxN8l0D2TAAPkA== X-Google-Smtp-Source: AGHT+IFnsQTqEltoOPdvO6SIRxje6y+bfvXxzl7B+8g3caOPoWoKh/KrytSKzHCBP9PwZcLn0xKpgg== X-Received: by 2002:a17:903:98c:b0:224:10a2:cad9 with SMTP id d9443c01a7336-2292f9f13f8mr222118895ad.41.1743507865562; Tue, 01 Apr 2025 04:44:25 -0700 (PDT) From: Nicholas Piggin To: Corey Minyard Cc: Nicholas Piggin , qemu-devel@nongnu.org Subject: [PATCH v2 3/5] ipmi/bmc-sim: Add 'Get Channel Info' command Date: Tue, 1 Apr 2025 21:44:10 +1000 Message-ID: <20250401114412.676636-4-npiggin@gmail.com> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250401114412.676636-1-npiggin@gmail.com> References: <20250401114412.676636-1-npiggin@gmail.com> 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::631; envelope-from=npiggin@gmail.com; helo=mail-pl1-x631.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-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: 1743508006449019100 Content-Type: text/plain; charset="utf-8" Linux issues this command when booting a powernv machine. Signed-off-by: Nicholas Piggin --- include/hw/ipmi/ipmi.h | 14 +++++++++ hw/ipmi/ipmi_bmc_sim.c | 65 ++++++++++++++++++++++++++++++++++++++++-- hw/ipmi/ipmi_bt.c | 2 ++ hw/ipmi/ipmi_kcs.c | 1 + 4 files changed, 80 insertions(+), 2 deletions(-) diff --git a/include/hw/ipmi/ipmi.h b/include/hw/ipmi/ipmi.h index 71c4efac8cd..d1af660012a 100644 --- a/include/hw/ipmi/ipmi.h +++ b/include/hw/ipmi/ipmi.h @@ -41,6 +41,15 @@ enum ipmi_op { IPMI_SEND_NMI }; =20 +/* Channel properties */ +#define IPMI_CHANNEL_IPMB 0x00 +#define IPMI_CHANNEL_SYSTEM 0x0f +#define IPMI_CHANNEL_MEDIUM_IPMB 0x01 +#define IPMI_CHANNEL_MEDIUM_SYSTEM 0x0c +#define IPMI_CHANNEL_PROTOCOL_IPMB 0x01 +#define IPMI_CHANNEL_PROTOCOL_KCS 0x05 +#define IPMI_CHANNEL_PROTOCOL_BT_15 0x08 + #define IPMI_CC_INVALID_CMD 0xc1 #define IPMI_CC_COMMAND_INVALID_FOR_LUN 0xc2 #define IPMI_CC_TIMEOUT 0xc3 @@ -175,6 +184,11 @@ struct IPMIInterfaceClass { * Return the firmware info for a device. */ void (*get_fwinfo)(struct IPMIInterface *s, IPMIFwInfo *info); + + /* + * IPMI channel protocol type number. + */ + uint8_t protocol; }; =20 /* diff --git a/hw/ipmi/ipmi_bmc_sim.c b/hw/ipmi/ipmi_bmc_sim.c index 6157ac71201..216bf8ff7f0 100644 --- a/hw/ipmi/ipmi_bmc_sim.c +++ b/hw/ipmi/ipmi_bmc_sim.c @@ -70,6 +70,7 @@ #define IPMI_CMD_GET_MSG 0x33 #define IPMI_CMD_SEND_MSG 0x34 #define IPMI_CMD_READ_EVT_MSG_BUF 0x35 +#define IPMI_CMD_GET_CHANNEL_INFO 0x42 =20 #define IPMI_NETFN_STORAGE 0x0a =20 @@ -1020,8 +1021,8 @@ static void send_msg(IPMIBmcSim *ibs, uint8_t *buf; uint8_t netfn, rqLun, rsLun, rqSeq; =20 - if (cmd[2] !=3D 0) { - /* We only handle channel 0 with no options */ + if (cmd[2] !=3D IPMI_CHANNEL_IPMB) { + /* We only handle channel 0h (IPMB) with no options */ rsp_buffer_set_error(rsp, IPMI_CC_INVALID_DATA_FIELD); return; } @@ -1219,6 +1220,65 @@ static void get_watchdog_timer(IPMIBmcSim *ibs, } } =20 +static void get_channel_info(IPMIBmcSim *ibs, + uint8_t *cmd, unsigned int cmd_len, + RspBuffer *rsp) +{ + IPMIInterface *s =3D ibs->parent.intf; + IPMIInterfaceClass *k =3D IPMI_INTERFACE_GET_CLASS(s); + uint8_t ch =3D cmd[2] & 0x0f; + + /* Only define channel 0h (IPMB) and Fh (system interface) */ + + if (ch =3D=3D 0x0e) { /* "This channel" */ + ch =3D IPMI_CHANNEL_SYSTEM; + } + rsp_buffer_push(rsp, ch); + + if (ch !=3D IPMI_CHANNEL_IPMB && ch !=3D IPMI_CHANNEL_SYSTEM) { + /* Not a supported channel */ + rsp_buffer_set_error(rsp, IPMI_CC_INVALID_DATA_FIELD); + return; + } + + if (ch =3D=3D IPMI_CHANNEL_IPMB) { + rsp_buffer_push(rsp, IPMI_CHANNEL_MEDIUM_IPMB); + rsp_buffer_push(rsp, IPMI_CHANNEL_PROTOCOL_IPMB); + } else { /* IPMI_CHANNEL_SYSTEM */ + rsp_buffer_push(rsp, IPMI_CHANNEL_MEDIUM_SYSTEM); + rsp_buffer_push(rsp, k->protocol); + } + + rsp_buffer_push(rsp, 0x00); /* Session-less */ + + /* IPMI Enterprise Number for Vendor ID */ + rsp_buffer_push(rsp, 0xf2); + rsp_buffer_push(rsp, 0x1b); + rsp_buffer_push(rsp, 0x00); + + if (ch =3D=3D IPMI_CHANNEL_SYSTEM) { + IPMIFwInfo info =3D {}; + uint8_t irq; + + k->get_fwinfo(s, &info); + if (info.irq =3D=3D IPMI_ISA_IRQ) { + irq =3D info.interrupt_number; + } else if (info.irq =3D=3D IPMI_PCI_IRQ) { + irq =3D 0x10 + info.interrupt_number; + } else { + irq =3D 0xff; /* no interrupt / unspecified */ + } + + /* Both interrupts use the same irq number */ + rsp_buffer_push(rsp, irq); + rsp_buffer_push(rsp, irq); + } else { + /* Reserved */ + rsp_buffer_push(rsp, 0x00); + rsp_buffer_push(rsp, 0x00); + } +} + static void get_sdr_rep_info(IPMIBmcSim *ibs, uint8_t *cmd, unsigned int cmd_len, RspBuffer *rsp) @@ -2015,6 +2075,7 @@ static const IPMICmdHandler app_cmds[] =3D { [IPMI_CMD_RESET_WATCHDOG_TIMER] =3D { reset_watchdog_timer }, [IPMI_CMD_SET_WATCHDOG_TIMER] =3D { set_watchdog_timer, 8 }, [IPMI_CMD_GET_WATCHDOG_TIMER] =3D { get_watchdog_timer }, + [IPMI_CMD_GET_CHANNEL_INFO] =3D { get_channel_info, 3 }, }; static const IPMINetfn app_netfn =3D { .cmd_nums =3D ARRAY_SIZE(app_cmds), diff --git a/hw/ipmi/ipmi_bt.c b/hw/ipmi/ipmi_bt.c index 583fc64730c..79311c41f2b 100644 --- a/hw/ipmi/ipmi_bt.c +++ b/hw/ipmi/ipmi_bt.c @@ -434,4 +434,6 @@ void ipmi_bt_class_init(IPMIInterfaceClass *iic) iic->handle_if_event =3D ipmi_bt_handle_event; iic->set_irq_enable =3D ipmi_bt_set_irq_enable; iic->reset =3D ipmi_bt_handle_reset; + /* BT System Interface Format, IPMI v1.5 */ + iic->protocol =3D IPMI_CHANNEL_PROTOCOL_BT_15; } diff --git a/hw/ipmi/ipmi_kcs.c b/hw/ipmi/ipmi_kcs.c index c15977cab4c..618a33c581f 100644 --- a/hw/ipmi/ipmi_kcs.c +++ b/hw/ipmi/ipmi_kcs.c @@ -420,4 +420,5 @@ void ipmi_kcs_class_init(IPMIInterfaceClass *iic) iic->handle_rsp =3D ipmi_kcs_handle_rsp; iic->handle_if_event =3D ipmi_kcs_handle_event; iic->set_irq_enable =3D ipmi_kcs_set_irq_enable; + iic->protocol =3D IPMI_CHANNEL_PROTOCOL_KCS; } --=20 2.47.1 From nobody Sun Nov 16 04:03:39 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=1743507990; cv=none; d=zohomail.com; s=zohoarc; b=m4TfFgd8NqUGDR92jeCIlWdFrUPdlm8J8insF5RY2ii1HZkAUKSaV0xaMFWw+HIKjqVniYs1vIoxYu4a8y4+zYcS1H0kGh0cdHXzpUokjyJgvrjiguQvCqjY7n/SuBxukcdSXdKWnSc3KFANLlmjaufEJ9dwGh96p9McyLRWcQg= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1743507990; h=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=YfSxfoPJes1VEH5r0b3g31jznF6Yt9hKoGOVvi6NHvo=; b=Lza2wIIk3VXmcxtV2syO+xIRHzObAV1ypfsTjN9h3ZVcjQVXqgNynYBSP6JhhbCCnjDXE+B2bKrI9XvkmFxCDVOZ1lux9hn+84ZrdJN8pYeERzeuS6m9ZwlrtN2YvSZ86GsYH+y38o/8KPQlF6XkaWVBhhHYzWZtjcBt3MMnXxM= 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 1743507990734469.70701280506614; Tue, 1 Apr 2025 04:46:30 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tza2q-0002IG-CF; Tue, 01 Apr 2025 07:44:41 -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 1tza2h-0002FX-48 for qemu-devel@nongnu.org; Tue, 01 Apr 2025 07:44:31 -0400 Received: from mail-pl1-x62e.google.com ([2607:f8b0:4864:20::62e]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tza2f-0003hf-CJ for qemu-devel@nongnu.org; Tue, 01 Apr 2025 07:44:30 -0400 Received: by mail-pl1-x62e.google.com with SMTP id d9443c01a7336-22622ddcc35so29354045ad.2 for ; Tue, 01 Apr 2025 04:44:29 -0700 (PDT) Received: from wheely.local0.net ([203.185.207.94]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-2291eee11b7sm86408135ad.86.2025.04.01.04.44.26 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 01 Apr 2025 04:44:27 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1743507868; x=1744112668; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=YfSxfoPJes1VEH5r0b3g31jznF6Yt9hKoGOVvi6NHvo=; b=NLIQcTOi/wHUpW5wMclBZvxzPzsDES5dyU2QJyGjsmY95/wdHbeoXN1XYf4kjLxyKn krMFhES8Ia4FIpKp0Yr0vQD2gzriIbIeQEoUHpqXCNXBXfh+puKbfYt+nDgXLYRk4IlV i8wNscy4lhwYHCzQBOD2bKpLuwZktyQKZN29rWcZOYaMLII9pDVlHMSJbqBrITiZBGp6 dIs0EmuOCBx/r7KvrFXptS6QpN398cp67v9r+SgRMkJP5zDvbVUzPBZJ6odyNHiBie5h At0/RDw5aE0vHmRxZqh3q0x1w66MbCQfWP0foIresXfE4iZVkY4jPBOYjYSj8nPZFYa1 5Evw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1743507868; x=1744112668; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=YfSxfoPJes1VEH5r0b3g31jznF6Yt9hKoGOVvi6NHvo=; b=pN7mrNvql4ixD599M3fQODc3/7Fb46HtHzwVYI6VG7WeqQmWX3Bs9fW+S1nMMyrTZY QFPB9PlpOvt71AXlyFV6g+FxpsFpReU96yLSH5Z5mpJwBXO2sym9JP5d6BJ+e/2Bd2QG lXkBGUAmHTzvc+rAt0OLs9JFzXROU5L/wu55MPs925Nk7ZcTXplBmA7lArx9U0xM51Uj +rpf0rXkCZlSugIu7qDM/SrzBouj2keFlf3uWFf+VsQ5EDoLS5K4YywxMwdiBS31/YNy DKAPqPYolaOzH3nc8AZtMajPg+0jiSjEC4PidvRbuznlOEvflMcluER0Lm8rYCnp9b/z 4Udg== X-Forwarded-Encrypted: i=1; AJvYcCVflrlKDYZFLxhuY8dthXsJcHzk7lWufygb8pxYJlW5OoLY9qbTgOncY9KZ5zvYBaQJpw+9em52uMqE@nongnu.org X-Gm-Message-State: AOJu0YwSSghsqQS1sVL2gM5EEqQW7BhBUNKFeSkXEsi3pczZmmkwQv0s Y8C0eGBe1t7S4twGYzG9juUTlKZF1nhD2qzZn7WupXNOtyqvlapD X-Gm-Gg: ASbGncs7pSzeYhy/0rGxYqd1R6PIia5mmwovzwdJLnpbQqEriHfnCm4gEZM8Mfo/Q3d k5l50H7AZiG6+odv84qNHuRAs4hUJNc52qX+UYs3lj6B/C9z4ijQ2Qt0RF1MXPD0zZIB4bq/puX i5hR0bwUUEhWv0bP9SidaM7sY9/6Yz/lhvyDjviacw2npI9tdsxyKvmOzjSFPi5xnTPwyU1PCrM oSC+/nnzyfs4d+ea8bGbzMKy4h+WZqpCVus2coyQOzoX1zH0uhitqdiCKQQ+IS+K1ZJfV3ACbrf fzlRfW5GYNeE9iItw37RVVxbbRxQBrVZAkP8a7CSW3OhJXBeUfLgEyo6ciXC X-Google-Smtp-Source: AGHT+IHe7pAbnq33036z2YU4NAvEiOXePCQBPNT2k1FYV5rp5D9+EWjxJYhkSRIDXgk+6twGzEUjSw== X-Received: by 2002:a17:902:8a87:b0:223:517a:d2a3 with SMTP id d9443c01a7336-2292f95d884mr151445935ad.17.1743507867923; Tue, 01 Apr 2025 04:44:27 -0700 (PDT) From: Nicholas Piggin To: Corey Minyard Cc: Nicholas Piggin , qemu-devel@nongnu.org Subject: [PATCH v2 4/5] ipmi/bmc-sim: implement watchdog dont log flag Date: Tue, 1 Apr 2025 21:44:11 +1000 Message-ID: <20250401114412.676636-5-npiggin@gmail.com> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250401114412.676636-1-npiggin@gmail.com> References: <20250401114412.676636-1-npiggin@gmail.com> 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::62e; envelope-from=npiggin@gmail.com; helo=mail-pl1-x62e.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-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: 1743507992103019000 Content-Type: text/plain; charset="utf-8" If the dont-log flag is set in the 'timer use' field for the 'set watchdog' command, a watchdog timeout will not get logged as a timer use expiration. Signed-off-by: Nicholas Piggin --- hw/ipmi/ipmi_bmc_sim.c | 32 ++++++++++++++++++++++---------- 1 file changed, 22 insertions(+), 10 deletions(-) diff --git a/hw/ipmi/ipmi_bmc_sim.c b/hw/ipmi/ipmi_bmc_sim.c index 216bf8ff7f0..3cefc69f8a8 100644 --- a/hw/ipmi/ipmi_bmc_sim.c +++ b/hw/ipmi/ipmi_bmc_sim.c @@ -514,7 +514,8 @@ static void gen_event(IPMIBmcSim *ibs, unsigned int sen= s_num, uint8_t deassert, =20 static void sensor_set_discrete_bit(IPMIBmcSim *ibs, unsigned int sensor, unsigned int bit, unsigned int val, - uint8_t evd1, uint8_t evd2, uint8_t ev= d3) + uint8_t evd1, uint8_t evd2, uint8_t ev= d3, + bool do_log) { IPMISensor *sens; uint16_t mask; @@ -534,7 +535,7 @@ static void sensor_set_discrete_bit(IPMIBmcSim *ibs, un= signed int sensor, return; /* Already asserted */ } sens->assert_states |=3D mask & sens->assert_suppt; - if (sens->assert_enable & mask & sens->assert_states) { + if (do_log && (sens->assert_enable & mask & sens->assert_states)) { /* Send an event on assert */ gen_event(ibs, sensor, 0, evd1, evd2, evd3); } @@ -544,7 +545,7 @@ static void sensor_set_discrete_bit(IPMIBmcSim *ibs, un= signed int sensor, return; /* Already deasserted */ } sens->deassert_states |=3D mask & sens->deassert_suppt; - if (sens->deassert_enable & mask & sens->deassert_states) { + if (do_log && (sens->deassert_enable & mask & sens->deassert_state= s)) { /* Send an event on deassert */ gen_event(ibs, sensor, 1, evd1, evd2, evd3); } @@ -700,6 +701,7 @@ static void ipmi_sim_handle_timeout(IPMIBmcSim *ibs) { IPMIInterface *s =3D ibs->parent.intf; IPMIInterfaceClass *k =3D IPMI_INTERFACE_GET_CLASS(s); + bool do_log =3D !IPMI_BMC_WATCHDOG_GET_DONT_LOG(ibs); =20 if (!ibs->watchdog_running) { goto out; @@ -711,14 +713,16 @@ static void ipmi_sim_handle_timeout(IPMIBmcSim *ibs) ibs->msg_flags |=3D IPMI_BMC_MSG_FLAG_WATCHDOG_TIMEOUT_MASK; k->do_hw_op(s, IPMI_SEND_NMI, 0); sensor_set_discrete_bit(ibs, IPMI_WATCHDOG_SENSOR, 8, 1, - 0xc8, (2 << 4) | 0xf, 0xff); + 0xc8, (2 << 4) | 0xf, 0xff, + do_log); break; =20 case IPMI_BMC_WATCHDOG_PRE_MSG_INT: ibs->msg_flags |=3D IPMI_BMC_MSG_FLAG_WATCHDOG_TIMEOUT_MASK; k->set_atn(s, 1, attn_irq_enabled(ibs)); sensor_set_discrete_bit(ibs, IPMI_WATCHDOG_SENSOR, 8, 1, - 0xc8, (3 << 4) | 0xf, 0xff); + 0xc8, (3 << 4) | 0xf, 0xff, + do_log); break; =20 default: @@ -734,28 +738,36 @@ static void ipmi_sim_handle_timeout(IPMIBmcSim *ibs) =20 do_full_expiry: ibs->watchdog_running =3D 0; /* Stop the watchdog on a timeout */ - ibs->watchdog_expired |=3D (1 << IPMI_BMC_WATCHDOG_GET_USE(ibs)); + + if (do_log) { + ibs->watchdog_expired |=3D (1 << IPMI_BMC_WATCHDOG_GET_USE(ibs)); + } + switch (IPMI_BMC_WATCHDOG_GET_ACTION(ibs)) { case IPMI_BMC_WATCHDOG_ACTION_NONE: sensor_set_discrete_bit(ibs, IPMI_WATCHDOG_SENSOR, 0, 1, - 0xc0, ibs->watchdog_use & 0xf, 0xff); + 0xc0, ibs->watchdog_use & 0xf, 0xff, + do_log); break; =20 case IPMI_BMC_WATCHDOG_ACTION_RESET: sensor_set_discrete_bit(ibs, IPMI_WATCHDOG_SENSOR, 1, 1, - 0xc1, ibs->watchdog_use & 0xf, 0xff); + 0xc1, ibs->watchdog_use & 0xf, 0xff, + do_log); k->do_hw_op(s, IPMI_RESET_CHASSIS, 0); break; =20 case IPMI_BMC_WATCHDOG_ACTION_POWER_DOWN: sensor_set_discrete_bit(ibs, IPMI_WATCHDOG_SENSOR, 2, 1, - 0xc2, ibs->watchdog_use & 0xf, 0xff); + 0xc2, ibs->watchdog_use & 0xf, 0xff, + do_log); k->do_hw_op(s, IPMI_POWEROFF_CHASSIS, 0); break; =20 case IPMI_BMC_WATCHDOG_ACTION_POWER_CYCLE: sensor_set_discrete_bit(ibs, IPMI_WATCHDOG_SENSOR, 2, 1, - 0xc3, ibs->watchdog_use & 0xf, 0xff); + 0xc3, ibs->watchdog_use & 0xf, 0xff, + do_log); k->do_hw_op(s, IPMI_POWERCYCLE_CHASSIS, 0); break; } --=20 2.47.1 From nobody Sun Nov 16 04:03:39 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=1743508000; cv=none; d=zohomail.com; s=zohoarc; b=FSmlYF9uKGDi6wFzJybhWnXnTFyBWvvDq2YAcaBDtdix5JdqXkTttjjfMM7D52EG4mcd9dNPcyDJyMI3yWe8Fai/x8JPUTRx6m4hTpiS95vBfWbRWruh8ZHvPCNb65nsjZ3BHYBdenlOQN3UfvijgqRG/hBV4X83QiRFU7mwRmU= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1743508000; h=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=0+EaAZxew1nTxO+VCpXNprDV9pUEDQL8oSwkWG7MVV4=; b=CpPjojIkDLHdujWnMuq21w9vTIkxWmm5Q/wwDHMXTB/abGxXAEFv0yp8Sa7YkgYAueSMYrPtBCBDZrkkRRYCJE6lYdRmk5gtj1ulhFbrW/ngcZOdPd19MM/KnHogGIBjSl0lhBcEXiQdlNg9u+497M7SfMIgheXjrVbDYz7LJsc= 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 1743508000583993.7523632949519; Tue, 1 Apr 2025 04:46:40 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1tza2t-0002Jp-7J; Tue, 01 Apr 2025 07:44:43 -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 1tza2m-0002Gu-41 for qemu-devel@nongnu.org; Tue, 01 Apr 2025 07:44:36 -0400 Received: from mail-pl1-x635.google.com ([2607:f8b0:4864:20::635]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1tza2h-0003i3-QQ for qemu-devel@nongnu.org; Tue, 01 Apr 2025 07:44:35 -0400 Received: by mail-pl1-x635.google.com with SMTP id d9443c01a7336-22438c356c8so105525575ad.1 for ; Tue, 01 Apr 2025 04:44:31 -0700 (PDT) Received: from wheely.local0.net ([203.185.207.94]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-2291eee11b7sm86408135ad.86.2025.04.01.04.44.28 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 01 Apr 2025 04:44:29 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1743507870; x=1744112670; darn=nongnu.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=0+EaAZxew1nTxO+VCpXNprDV9pUEDQL8oSwkWG7MVV4=; b=T0o4Ils7SXKpc9B4a4mdjw71TwOcRGYf5vaNN+6LmnzoZ4jBi/tooTtlsj5xaTkX9z Q5C6QUiO0MfhGbS3eW4TXW3od8XcnwRzFQJXnxgt3lzxuVkwBTaJokHMy2L/wmpDcJ1Z BUp13SCT0Bw20xATy8OGhA7N7HOVQMbtjUth8NVCv8r6o9ynh+UgKLReG9rwG4Kc4bL6 wuMBZHzL7Ly8ea0yBPY0mQhMYe/i3yKAflAWUZZSqkvqdh3SM7G/PAlD6jlTokN1f5cu XaSalBy5si9FUUNPCSTYgXQPlhzYM8FrC+kuvc13Z1cvlKvfb/eYUDH34nYA2AcudqvY v3Jg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1743507870; x=1744112670; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=0+EaAZxew1nTxO+VCpXNprDV9pUEDQL8oSwkWG7MVV4=; b=LwbjanmrIXEPVJtEilucAQijl1YpBkOSL1J6bZPYrFO3+l4aip4bwIOWYSIdSXokq9 10uFU74cy9CJKzLO/gSwH8bX6yLcaVVuDcY1J7AwK2mpiUs1CuzMEgRoIKI75PyNELDN FTJzSD+j4ihpKZiBojhQBzce8Afbhq9CgGlOZ8xc01CvpVvfpOubwWsIlU18dnmLG/9j xASwRq0nOtQGASwjGvTk2e8aUv+6G9+539I89giGSD5DV5ODR03w5adrcCbYhYEWYiT2 jX5twof+A2htPeU6RUKduYuWyEpJO/e2m17KOswdfMzVQQThKyid4Slgbdewt1fzBLkf CazQ== X-Forwarded-Encrypted: i=1; AJvYcCWca056+Pmf+1VKfWBNWdRjwU+OxoQSDYgsEXJji6rkv+oCX/DkMQH3OABfkb22AbwKb8VTpXQNpIq6@nongnu.org X-Gm-Message-State: AOJu0YxMg4lsVvxSF2Pnss+bSZ5GroiYaQE37b1I3wbCOVuzAen4OZV7 C52X9i4XbCzeMJzJEWfhaJhD0Sj32+Q6JGpKhiFC9jBdljHe4zGlOHslVw== X-Gm-Gg: ASbGncuknXtJ3w4sy1vG6NT23GP3zTsADrr8U3wV7bl5r8WR41Eh6tXyMGodaq/6kGh Pi5FYqobZP7UkdTHL/Cdkxr1w4Y2yRs1uPd4ap0KsWSHhbZIfzWBCdNWPSemqs7T8+0bssqOhFJ wp2sx63LLvt7rjsdMTOdVuZMNNAEqC/aXrquSU796mx0rBuAf0gv2eU2qJE6JCwowFrQGGc+Fcw L8r3ymBkLdK4UEbxSamtWHYSZPTTyCTXWVOu8nm1zuJKOmC9LhUwFWY6ElPvHNY2Jf0D3nQ/ckW aIzOglUqqGwX9zVbN+4AhnXvLR7y55SjfjB48Ag2Vz3JIvm/iBTKefUinwuV X-Google-Smtp-Source: AGHT+IEtx8aLnyc3hYv3yxf8F83hmALSzm8jYzr9nWWklv7m2W9Rlcks9Ac9GIP+LxsKhY0SX1GTxg== X-Received: by 2002:a17:903:19f0:b0:224:1e7a:43fe with SMTP id d9443c01a7336-2292fa01904mr198497315ad.46.1743507870296; Tue, 01 Apr 2025 04:44:30 -0700 (PDT) From: Nicholas Piggin To: Corey Minyard Cc: Nicholas Piggin , qemu-devel@nongnu.org Subject: [PATCH v2 5/5] ipmi/bmc-sim: add error handling for 'Set BMC Global Enables' command Date: Tue, 1 Apr 2025 21:44:12 +1000 Message-ID: <20250401114412.676636-6-npiggin@gmail.com> X-Mailer: git-send-email 2.47.1 In-Reply-To: <20250401114412.676636-1-npiggin@gmail.com> References: <20250401114412.676636-1-npiggin@gmail.com> 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::635; envelope-from=npiggin@gmail.com; helo=mail-pl1-x635.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-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: 1743508002565019100 Content-Type: text/plain; charset="utf-8" Mask out unsupported bits and return failure if attempting to set any. This is not required by the IPMI spec, but it does require that system software not change bits it isn't aware of. Signed-off-by: Nicholas Piggin --- hw/ipmi/ipmi_bmc_sim.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/hw/ipmi/ipmi_bmc_sim.c b/hw/ipmi/ipmi_bmc_sim.c index 3cefc69f8a8..794b9ed5b12 100644 --- a/hw/ipmi/ipmi_bmc_sim.c +++ b/hw/ipmi/ipmi_bmc_sim.c @@ -235,6 +235,7 @@ struct IPMIBmcSim { #define IPMI_BMC_MSG_FLAG_RCV_MSG_QUEUE_SET(s) \ (IPMI_BMC_MSG_FLAG_RCV_MSG_QUEUE & (s)->msg_flags) =20 +#define IPMI_BMC_GLOBAL_ENABLES_SUPPORTED 0x0f #define IPMI_BMC_RCV_MSG_QUEUE_INT_BIT 0 #define IPMI_BMC_EVBUF_FULL_INT_BIT 1 #define IPMI_BMC_EVENT_MSG_BUF_BIT 2 @@ -938,7 +939,14 @@ static void set_bmc_global_enables(IPMIBmcSim *ibs, uint8_t *cmd, unsigned int cmd_len, RspBuffer *rsp) { - set_global_enables(ibs, cmd[2]); + uint8_t val =3D cmd[2]; + + if (val & ~IPMI_BMC_GLOBAL_ENABLES_SUPPORTED) { + rsp_buffer_set_error(rsp, IPMI_CC_INVALID_DATA_FIELD); + return; + } + + set_global_enables(ibs, val); } =20 static void get_bmc_global_enables(IPMIBmcSim *ibs, --=20 2.47.1