On Mon, Mar 31, 2025 at 10:57:22PM +1000, Nicholas Piggin wrote: > 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 <npig...@gmail.com> > --- > hw/ipmi/ipmi_bmc_sim.c | 7 ++++++- > 1 file changed, 6 insertions(+), 1 deletion(-) > > diff --git a/hw/ipmi/ipmi_bmc_sim.c b/hw/ipmi/ipmi_bmc_sim.c > index 6157ac71201..32161044c0b 100644 > --- a/hw/ipmi/ipmi_bmc_sim.c > +++ b/hw/ipmi/ipmi_bmc_sim.c > @@ -733,7 +733,12 @@ static void ipmi_sim_handle_timeout(IPMIBmcSim *ibs) > > do_full_expiry: > ibs->watchdog_running = 0; /* Stop the watchdog on a timeout */ > - ibs->watchdog_expired |= (1 << IPMI_BMC_WATCHDOG_GET_USE(ibs)); > + > + /* Log the expiry if the don't log bit is clear */ > + if (!IPMI_BMC_WATCHDOG_GET_DONT_LOG(ibs)) { > + ibs->watchdog_expired |= (1 << IPMI_BMC_WATCHDOG_GET_USE(ibs)); > + } > +
Are you sure this is correct? The spec doesn't say what this means, but I would assume this means "Don't add a system log" not "Don't set the expiry happened bit". > switch (IPMI_BMC_WATCHDOG_GET_ACTION(ibs)) { > case IPMI_BMC_WATCHDOG_ACTION_NONE: > sensor_set_discrete_bit(ibs, IPMI_WATCHDOG_SENSOR, 0, 1, > -- > 2.47.1 >