ipmi:si: Gracefully handle if the BMC is non-functional
authorCorey Minyard <corey@minyard.net>
Wed, 20 Aug 2025 19:56:50 +0000 (14:56 -0500)
committerCorey Minyard <corey@minyard.net>
Mon, 8 Sep 2025 15:21:41 +0000 (10:21 -0500)
commitbc3a9d217755f65c137f145600f23bf1d6c31ea9
treead1265f7d9728ba90feacc2fb20c1043eacb4451
parent3bc54ab3b9790ca92f197e9822e486665daa321c
ipmi:si: Gracefully handle if the BMC is non-functional

If the BMC is not functional, the driver goes into an error state and
starts a 1 second timer.  When the timer times out, it will attempt a
simple message.  If the BMC interacts correctly, the driver will start
accepting messages again.  If not, it remains in error state.

If the driver goes into error state, all messages current and pending
will return with an error.

This should more gracefully handle when the BMC becomes non-operational,
as opposed to trying each messages individually and failing them.

Signed-off-by: Corey Minyard <corey@minyard.net>
drivers/char/ipmi/ipmi_si_intf.c