[PATCH 0/3][SRU][ARTFUL] Fix deadlock on task switches with new microcode

Tyler Hicks tyhicks at canonical.com
Thu Apr 5 05:51:34 UTC 2018


BugLink: https://bugs.launchpad.net/bugs/1759920

[Impact]

Some systems experience kernel lockups after updating to the latest
intel-microcode package or when receiving updated microcode from a BIOS update.

In many cases, the lockups occur before users can reach the login screen which
makes it very difficult to debug/workaround.

[Test Case]

The most reliable test case currently known is to install the sssd package.
Lockups may occur during package installation (disable IBPB by writing 0 to
/proc/sys/kernel/ibpb_enabled to prevent this from happening). A lockup will
most likely occur just after booting the system up as the lock screen is
displayed.

[Regression Potential]

The fix is in the task switching code of the kernel so complexity of the change
is relatively high.

[Other Information]

The third patch fixes what I think was an incomplete backport of 72be211ba.
That commit added the initialize_tlbstate_and_flush() function but then never
added any callers of that function.

I was hopeful that the third patch would fix a resume from hibernation/sleep
bug (LP: #1748393) but one tester reported that it did not have an effect.

Tyler





More information about the kernel-team mailing list