RHEL 9.1 kernel backported an upstream ucsi_acpi bug

Latest response

Booting with certain ThinkPads docked to a Thunderbolt dock (including but not limited to Lenovo ones) will result in kernel panic due to the dereference of a NULL pointer in ucsi_acpi. This is the same bug as:

https://bugzilla.suse.com/show_bug.cgi?id=1202386
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1994126

And the offending commit was reverted upstream a few months ago:

https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v5.19.16&id=3d4044c9e6d2e3f11f1f8b5e0ee8647d3eb1afad

Due to the monolithic kernel tree, it is a bit difficult to find out when this bug was first backported into the RHEL kernel (maybe 5.14.0-138.el9, by the change log). It is present as of the most recent 5.14.0-162.6.1.el9_1.

Unfortunately, RHEL 9 builds with CONFIG_UCSI_ACPI=y, and hence ucsi_acpi cannot be disabled by blacklisting (unlike the referenced SLES case, with a work-around). It is necessary to either apply the upstream revert, or change CONFIG_UCSI_ACPI and rebuild the kernel. Out of the box, the only remotely effective workaround would be the draconian boot parameter acpi=off, which will wreck all kinds of havoc.

Responses