<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/drivers/char/ipmi/ipmi_si_intf.c, branch linux-rolling-stable</title>
<subtitle>Hosts the 0x221E linux distro kernel.</subtitle>
<id>https://universe.0xinfinity.dev/distro/kernel/atom?h=linux-rolling-stable</id>
<link rel='self' href='https://universe.0xinfinity.dev/distro/kernel/atom?h=linux-rolling-stable'/>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/'/>
<updated>2026-03-19T15:15:14Z</updated>
<entry>
<title>ipmi:si: Fix check for a misbehaving BMC</title>
<updated>2026-03-19T15:15:14Z</updated>
<author>
<name>Corey Minyard</name>
<email>corey@minyard.net</email>
</author>
<published>2026-02-13T06:15:04Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=772ecd4bc7ef65ab7c7c22352d0f7ff69efb83e4'/>
<id>urn:sha1:772ecd4bc7ef65ab7c7c22352d0f7ff69efb83e4</id>
<content type='text'>
commit cae66f1a1dcd23e17da5a015ef9d731129f9d2dd upstream.

There is a race on checking the state in the sender, it needs to be
checked under a lock.  But you also need a check to avoid issues with
a misbehaving BMC for run to completion mode.  So leave the check at
the beginning for run to completion, and add a check under the lock
to avoid the race.

Reported-by: Rafael J. Wysocki &lt;rafael@kernel.org&gt;
Fixes: bc3a9d217755 ("ipmi:si: Gracefully handle if the BMC is non-functional")
Cc: stable@vger.kernel.org # 4.18
Signed-off-by: Corey Minyard &lt;corey@minyard.net&gt;
Reviewed-by: Rafael J. Wysocki (Intel) &lt;rafael@kernel.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>ipmi:si: Handle waiting messages when BMC failure detected</title>
<updated>2026-03-19T15:15:13Z</updated>
<author>
<name>Corey Minyard</name>
<email>corey@minyard.net</email>
</author>
<published>2026-02-06T15:59:32Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=3a7e5907c7ad79c0008e09a404c2a99650f2c0ab'/>
<id>urn:sha1:3a7e5907c7ad79c0008e09a404c2a99650f2c0ab</id>
<content type='text'>
commit 52c9ee202edd21d0599ac3b5a6fe1da2a2f053e5 upstream.

If a BMC failure is detected, the current message is returned with an
error.  However, if there was a waiting message, it would not be
handled.

Add a check for the waiting message after handling the current message.

Suggested-by: Guenter Roeck &lt;linux@roeck-us.net&gt;
Reported-by: Rafael J. Wysocki &lt;rafael@kernel.org&gt;
Closes: https://lore.kernel.org/linux-acpi/CAK8fFZ58fidGUCHi5WFX0uoTPzveUUDzT=k=AAm4yWo3bAuCFg@mail.gmail.com/
Fixes: bc3a9d217755 ("ipmi:si: Gracefully handle if the BMC is non-functional")
Cc: stable@vger.kernel.org # 4.18
Signed-off-by: Corey Minyard &lt;corey@minyard.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>ipmi:si: Use a long timeout when the BMC is misbehaving</title>
<updated>2026-03-19T15:15:13Z</updated>
<author>
<name>Corey Minyard</name>
<email>corey@minyard.net</email>
</author>
<published>2026-02-06T16:33:52Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=c61c6ad3c4ef36ad746d8053070a1c9abfe2dfb1'/>
<id>urn:sha1:c61c6ad3c4ef36ad746d8053070a1c9abfe2dfb1</id>
<content type='text'>
commit c3bb3295637cc9bf514f690941ca9a385bf30113 upstream.

If the driver goes into HOSED state, don't reset the timeout to the
short timeout in the timeout handler.

Reported-by: Igor Raits &lt;igor@gooddata.com&gt;
Closes: https://lore.kernel.org/linux-acpi/CAK8fFZ58fidGUCHi5WFX0uoTPzveUUDzT=k=AAm4yWo3bAuCFg@mail.gmail.com/
Fixes: bc3a9d217755 ("ipmi:si: Gracefully handle if the BMC is non-functional")
Cc: stable@vger.kernel.org # 4.18
Signed-off-by: Corey Minyard &lt;corey@minyard.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>ipmi:si: Don't block module unload if the BMC is messed up</title>
<updated>2026-03-19T15:15:13Z</updated>
<author>
<name>Corey Minyard</name>
<email>corey@minyard.net</email>
</author>
<published>2026-02-13T03:52:48Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=7f06b10d1e3753c01266854d2ac380514f7ac5d4'/>
<id>urn:sha1:7f06b10d1e3753c01266854d2ac380514f7ac5d4</id>
<content type='text'>
commit f895e5df80316a308c2f7d64d13a78494630ea05 upstream.

If the BMC is in a bad state, don't bother waiting for queues messages
since there can't be any.  Otherwise the unload is blocked until the
BMC is back in a good state.

Reported-by: Rafael J. Wysocki &lt;rafael@kernel.org&gt;
Fixes: bc3a9d217755 ("ipmi:si: Gracefully handle if the BMC is non-functional")
Cc: stable@vger.kernel.org # 4.18
Signed-off-by: Corey Minyard &lt;corey@minyard.net&gt;
Reviewed-by: Rafael J. Wysocki (Intel) &lt;rafael@kernel.org&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>ipmi: Switch to use %ptSp</title>
<updated>2025-11-19T11:26:06Z</updated>
<author>
<name>Andy Shevchenko</name>
<email>andriy.shevchenko@linux.intel.com</email>
</author>
<published>2025-11-13T14:32:25Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=0cfc283d18bc5ca215ed2131bd3dfe4ef6c66585'/>
<id>urn:sha1:0cfc283d18bc5ca215ed2131bd3dfe4ef6c66585</id>
<content type='text'>
Use %ptSp instead of open coded variants to print content of
struct timespec64 in human readable format.

Acked-by: Corey Minyard &lt;cminyard@mvista.com&gt;
Signed-off-by: Andy Shevchenko &lt;andriy.shevchenko@linux.intel.com&gt;
Link: https://patch.msgid.link/20251113150217.3030010-12-andriy.shevchenko@linux.intel.com
Signed-off-by: Petr Mladek &lt;pmladek@suse.com&gt;
</content>
</entry>
<entry>
<title>ipmi: Add Loongson-2K BMC support</title>
<updated>2025-09-16T15:15:54Z</updated>
<author>
<name>Binbin Zhou</name>
<email>zhoubinbin@loongson.cn</email>
</author>
<published>2025-09-04T12:35:07Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=d46651d4e3c0caab554c4c591c0b6c3b026b1e93'/>
<id>urn:sha1:d46651d4e3c0caab554c4c591c0b6c3b026b1e93</id>
<content type='text'>
This patch adds Loongson-2K BMC IPMI support.

According to the existing design, we use software simulation to
implement the KCS interface registers: Stauts/Command/Data_Out/Data_In.

Also since both host side and BMC side read and write kcs status, fifo flag
is used to ensure data consistency.

The single KCS message block is as follows:

+-------------------------------------------------------------------------+
|FIFO flags| KCS register data | CMD data | KCS version | WR REQ | WR ACK |
+-------------------------------------------------------------------------+

Co-developed-by: Chong Qiao &lt;qiaochong@loongson.cn&gt;
Signed-off-by: Chong Qiao &lt;qiaochong@loongson.cn&gt;
Reviewed-by: Huacai Chen &lt;chenhuacai@loongson.cn&gt;
Acked-by: Corey Minyard &lt;corey@minyard.net&gt;
Signed-off-by: Binbin Zhou &lt;zhoubinbin@loongson.cn&gt;
Message-ID: &lt;8f9ffb6f0405345af8f04193ce1510aacd075e72.1756987761.git.zhoubinbin@loongson.cn&gt;
Signed-off-by: Corey Minyard &lt;corey@minyard.net&gt;
</content>
</entry>
<entry>
<title>ipmi:si: Gracefully handle if the BMC is non-functional</title>
<updated>2025-09-08T15:21:41Z</updated>
<author>
<name>Corey Minyard</name>
<email>corey@minyard.net</email>
</author>
<published>2025-08-20T19:56:50Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=bc3a9d217755f65c137f145600f23bf1d6c31ea9'/>
<id>urn:sha1:bc3a9d217755f65c137f145600f23bf1d6c31ea9</id>
<content type='text'>
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 &lt;corey@minyard.net&gt;
</content>
</entry>
<entry>
<title>ipmi: Allow an SMI sender to return an error</title>
<updated>2025-09-08T15:21:41Z</updated>
<author>
<name>Corey Minyard</name>
<email>corey@minyard.net</email>
</author>
<published>2025-08-20T19:04:24Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=9cf93a8fa9513c6d3cc65bdd50e05c1355cef322'/>
<id>urn:sha1:9cf93a8fa9513c6d3cc65bdd50e05c1355cef322</id>
<content type='text'>
Getting ready for handling when a BMC is non-responsive or broken, allow
the sender operation to fail in an SMI.  If it was a user-generated
message it will return the error.

The powernv code was already doing this internally, but the way it was
written could result in deep stack descent if there were a lot of
messages queued.  Have its send return an error in this case.

Signed-off-by: Corey Minyard &lt;corey@minyard.net&gt;
</content>
</entry>
<entry>
<title>ipmi:si: Move flags get start to its own function</title>
<updated>2025-09-08T15:21:41Z</updated>
<author>
<name>Corey Minyard</name>
<email>corey@minyard.net</email>
</author>
<published>2025-08-20T18:25:33Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=abe4918a942e17f997f62b1e12bc8a15d8ff5f7e'/>
<id>urn:sha1:abe4918a942e17f997f62b1e12bc8a15d8ff5f7e</id>
<content type='text'>
It's about to be used from another place, and this looks better,
anyway.

Signed-off-by: Corey Minyard &lt;corey@minyard.net&gt;
</content>
</entry>
<entry>
<title>ipmi:si: Merge some if statements</title>
<updated>2025-09-08T15:21:41Z</updated>
<author>
<name>Corey Minyard</name>
<email>corey@minyard.net</email>
</author>
<published>2025-08-20T18:11:55Z</published>
<link rel='alternate' type='text/html' href='https://universe.0xinfinity.dev/distro/kernel/commit/?id=753bc23d8ffcf5a395a4eef90cf40c8e7dec51fb'/>
<id>urn:sha1:753bc23d8ffcf5a395a4eef90cf40c8e7dec51fb</id>
<content type='text'>
Changes resulted in a silly looking piece of logic.  Get rid of a goto
and use if statements properly.

Signed-off-by: Corey Minyard &lt;corey@minyard.net&gt;
</content>
</entry>
</feed>
