From nobody Sun Nov 16 02:30:08 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 ARC-Seal: i=1; a=rsa-sha256; t=1744848206; cv=none; d=zohomail.com; s=zohoarc; b=fXYq/8LXcR/EULLHuj6fzesqJNA683R4uu5thSETjh6IgkhQg+mheGPxRlcCHI4bS9XGt+RKVuMMjhbv3y3PQapEMeBXb67BnPDnHk2hnOcBAXmy+bn2lSqkBsRYBHphAXC4tpbxp4JGdP958tj5miWtRY008+twkv2Up6IB/a4= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1744848206; 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=JocjqZ7axQak0ryaIxlzlPJ7rR7B3nPUKxuLnqDLYbA=; b=YH1zwOCDlCcvUYo2K8UxRxy7YRdqRMxVNLVedqd+fx2kb+Nnno9I40StrVrMwCJgmM6iSJ8Sz9Nmray1bTSjBgePrd2HW3FGrvRsR2ye0m3UiM86HuVxWNo1hQ7wi+DXCWCGRg/bm9UE+Vl5iVJySgYg7J76q0yPTnQIV6Wgs+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 1744848206562377.8046588936518; Wed, 16 Apr 2025 17:03:26 -0700 (PDT) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1u5CiL-000435-NM; Wed, 16 Apr 2025 20:02:45 -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 1u5CiJ-00042Q-96 for qemu-devel@nongnu.org; Wed, 16 Apr 2025 20:02:43 -0400 Received: from mail-ot1-x330.google.com ([2607:f8b0:4864:20::330]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1u5CiH-0006Px-Eg for qemu-devel@nongnu.org; Wed, 16 Apr 2025 20:02:42 -0400 Received: by mail-ot1-x330.google.com with SMTP id 46e09a7af769-72c1419f73eso684786a34.1 for ; Wed, 16 Apr 2025 17:02:41 -0700 (PDT) Received: from localhost ([2001:470:b8f6:1b:8795:e9fb:beca:ef25]) by smtp.gmail.com with UTF8SMTPSA id 46e09a7af769-72e73d6eb1fsm2989768a34.16.2025.04.16.17.02.38 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 16 Apr 2025 17:02:39 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=minyard-net.20230601.gappssmtp.com; s=20230601; t=1744848159; x=1745452959; 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=JocjqZ7axQak0ryaIxlzlPJ7rR7B3nPUKxuLnqDLYbA=; b=Eor6tSOpKcH9dxeld4s7NiG0gQbGKtKm/NTdikg2cmUMaxrZgcxu1G1fsPNPXStlkd yCJeVG7FoGhhoTkViPNtT6PTN60pm6fTjTQJsS7J4MAeY+rwITmZ48IddacmGFcRSDNM 33eIluxj7lE0Xd2FTbkqeSnfyKxdbrFNq4UgWxfvw1Iz8hgafd2M43omcSOR/QBg+3/G cSyVhmHqmsNycg2OtfZfy3U+Qz2kjVOZq2+UVH0CQVnKWiPIZM+nG7f711c7i7DKkd1o CiNEO8yHGL4CxihDhtK6WEiHmAojm+PLhko7v/w4Q/rWhkI/RzGvjztwoTrrxpoJptl5 VwPA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1744848159; x=1745452959; 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=JocjqZ7axQak0ryaIxlzlPJ7rR7B3nPUKxuLnqDLYbA=; b=UqLeU9HdoNsSgcYeIBkD91gXivX02fn5rHcjetXafGDgKJsprsn+e9ngNx6W1KTbCg hTF/uRzzL3yCR8AOs4wOtZG+P/00ITzDxN5PtXH+Bk/ve/M/FF3ToPAGcr4qmcplcI5t +2/AYIZ1v4U6mZLd6nXuC1jxbWlr9BW/iqehnIPJlqxSYZZAvsa7czbLXrMzGBaLKF+a nSQ4ZqZtjifgsrC5FewsjkSYEn95eMV1+OZzzVFoo3wyiEi41zTRqlN7UTI+Kf8W2b3z ABNrOD7DvdsmSKWf6r7LJCCN3YUaVaGOAKxqRU9NEO6HELWQxFDkbNP21ibczTPmH5Ug 63bw== X-Gm-Message-State: AOJu0YzKteap0H72jkssCgBS0kfvtMG0q1GQdlqkXe64o9Ke7zDHuxSP osMc8XE3/q7XoSppszZZkZU1C9H64yE1wDW6+rXBjyVlyOakyqOStSEvKZLrk7zJy+JLwFS/2ce t X-Gm-Gg: ASbGncuU6RhBKoODOO1FEIqd3gLR/EZcGwzXB7Db2rDhAqm2ZEQlx7tbqOKbrAsMtOc 5EGxCvkoIu5VtQW/hP1zhiLBWzMu6n8aDxiTXPrJen9bWF9quNn0WnkkjfkHJaiGRkcCj0QWEQy 5xrpe0zh+pUijB+ntNFu7RFD0cWmIf1SRq+V/gZiyZf+w7+eIbxwHhN/z8qHQGtr87MZvIMeDy7 qH21Gm0JYfRaYk2So81eJ8r43P8pxpt5leqush/2flebV9mQ+rgmXhnUNd8PlCpEo8lSP/tXmM7 6pmzMnGL6JkC979gAj66mACxk13leXRIS38= X-Google-Smtp-Source: AGHT+IHoJn4tF9TxRP9AdgllUNZFXaRyUI2bD0axk6wKWNwxt+743nLtFxgSnySKbvS9LP+n6i17Sw== X-Received: by 2002:a05:6830:620f:b0:72a:b2a:476 with SMTP id 46e09a7af769-72f734b66admr494148a34.3.1744848159612; Wed, 16 Apr 2025 17:02:39 -0700 (PDT) From: Corey Minyard To: qemu-devel@nongnu.org Cc: Nicholas Piggin , Corey Minyard Subject: [PULL 5/6] ipmi/bmc-sim: implement watchdog dont log flag Date: Wed, 16 Apr 2025 18:59:09 -0500 Message-ID: <20250417000224.3830705-6-corey@minyard.net> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20250417000224.3830705-1-corey@minyard.net> References: <20250417000224.3830705-1-corey@minyard.net> 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: none client-ip=2607:f8b0:4864:20::330; envelope-from=corey@minyard.net; helo=mail-ot1-x330.google.com X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001, SPF_NONE=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 @minyard-net.20230601.gappssmtp.com) X-ZM-MESSAGEID: 1744848210767019100 Content-Type: text/plain; charset="utf-8" From: Nicholas Piggin 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 Message-ID: <20250401140153.685523-5-npiggin@gmail.com> Signed-off-by: Corey Minyard --- hw/ipmi/ipmi_bmc_sim.c | 26 +++++++++++++++++--------- 1 file changed, 17 insertions(+), 9 deletions(-) diff --git a/hw/ipmi/ipmi_bmc_sim.c b/hw/ipmi/ipmi_bmc_sim.c index 03e58d283e..4ed66e1ee0 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: @@ -738,24 +742,28 @@ static void ipmi_sim_handle_timeout(IPMIBmcSim *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.43.0