(Update: usbcore.autosuspend=-1 works around both crashes.)
My Threadripper Linux workstation has been suffering from frequent crashes over the past several months. I don’t think the timing of the onset will be helpful in troubleshooting, other than it coincided in a change in how I have been using the system - in particular, hot-plugging USB devices more frequently.
I am running Ubuntu 24.04.4 LTS, currently with kernel 7.0.0. The problem existed on kernel 6.8.0 as well. Notably, I have not been able to reproduce the crashes in Windows.
There seem to be two distinct (but possibly related) issues.
Issue 1: Crash when connecting to an Android device (Google Pixel) using adb
- Enable developer mode & USB debugging on the Android phone
- Plug the phone into a USB port on the workstation. (The specific port doesn’t seem to matter; it happens using the front panel USB-C, and it also happens using a USB-C port on a powered Thunderbolt dock plugged into one of the ASM4242 USB4 ports.)
- Run:
adb shell ‘while sleep 0.1; do echo -n .; done’ - After a few minutes of printing
.'s to your terminal (the amount of time varies), the system will crash and maybe reboot.
Example:
$ ssh my-workstation
$ adb shell 'while sleep 0.1; do echo -n .; done'
* daemon not running; starting now at tcp:5037
* daemon started successfully
................................................................................
................................................................................
................................................................................
.......................................client_loop: send disconnect: Broken pipe
Nothing gets written to kern.log because the system crashes so suddenly. I connected a serial console (via the ipmiconsole command) and managed to catch this error message in the output of dmesg -H -W
[Aug26 13:30] clocksource: Long readout interval, skipping watchdog check: cs_nsec: 1528817647 wd_nsec: 1528818397
Most of the time it crashes before being able to output that message, so it took a few tries to get it.
Meanwhile, running the same adb shell command in Windows worked completely fine.
Issue 2: Crash when plugging in a USB device
This one behaves differently from the first issue. Again, it doesn’t matter what port I’m plugging into (front-panel USB-A, or a USB-A port on my Thunderbolt dock.) The specific USB device doesn’t seem to matter either. I reproduced the crash a few times by plugging in my keyboard directly into the front panel port. It can also happen when I toggle my “ABFCRTTW” brand USB switch (the one I use for switching my keyboard/mouse between two computers, so no physical plugging involved.) The crash is very intermittent, so it often takes a lot of tries to get it to happen.
The error message for this issue is a lot scarier looking, and it shows up as a MCE “cache error” log message next boot. I have not been able to successfully reproduce this in Windows.
2026-08-24T17:39:55.660629-04:00 mighty kernel: BERT: Error records from previous boot:
2026-08-24T17:39:55.660630-04:00 mighty kernel: [Hardware Error]: event severity: fatal
2026-08-24T17:39:55.660630-04:00 mighty kernel: [Hardware Error]: Error 0, type: fatal
2026-08-24T17:39:55.660630-04:00 mighty kernel: [Hardware Error]: fru_text: ProcessorError
2026-08-24T17:39:55.660630-04:00 mighty kernel: [Hardware Error]: section_type: IA32/X64 processor error
2026-08-24T17:39:55.660631-04:00 mighty kernel: [Hardware Error]: Local APIC_ID: 0x5a
2026-08-24T17:39:55.660631-04:00 mighty kernel: [Hardware Error]: CPUID Info:
2026-08-24T17:39:55.660631-04:00 mighty kernel: [Hardware Error]: 00000000: 00a10f81 00000000 5a800800 00000000
2026-08-24T17:39:55.660631-04:00 mighty kernel: [Hardware Error]: 00000010: 76fa320b 00000000 178bfbff 00000000
2026-08-24T17:39:55.660632-04:00 mighty kernel: [Hardware Error]: 00000020: 00000000 00000000 00000000 00000000
2026-08-24T17:39:55.660632-04:00 mighty kernel: [Hardware Error]: Error Information Structure 0:
2026-08-24T17:39:55.660675-04:00 mighty kernel: [Hardware Error]: Error Structure Type: cache error
2026-08-24T17:39:55.660675-04:00 mighty kernel: [Hardware Error]: Check Information: 0x000000000602001f
2026-08-24T17:39:55.660675-04:00 mighty kernel: [Hardware Error]: Transaction Type: 2, Generic
2026-08-24T17:39:55.660676-04:00 mighty kernel: [Hardware Error]: Operation: 0, generic error
2026-08-24T17:39:55.660676-04:00 mighty kernel: [Hardware Error]: Level: 0
2026-08-24T17:39:55.660676-04:00 mighty kernel: [Hardware Error]: Processor Context Corrupt: true
2026-08-24T17:39:55.660676-04:00 mighty kernel: [Hardware Error]: Uncorrected: true
2026-08-24T17:39:55.660677-04:00 mighty kernel: [Hardware Error]: Context Information Structure 0:
2026-08-24T17:39:55.660677-04:00 mighty kernel: [Hardware Error]: Register Context Type: MSR Registers (Machine Check and other MSRs)
2026-08-24T17:39:55.660677-04:00 mighty kernel: [Hardware Error]: Register Array Size: 0x0080
2026-08-24T17:39:55.660678-04:00 mighty kernel: [Hardware Error]: MSR Address: 0xc0002051
2026-08-24T17:39:55.660678-04:00 mighty kernel: mce: [Hardware Error]: Machine check events logged
2026-08-24T17:39:55.660678-04:00 mighty kernel: BERT: Total records found: 1
2026-08-24T17:39:55.660680-04:00 mighty kernel: mce: [Hardware Error]: CPU 45: Machine Check: 0 Bank 5: aea0000001000108
2026-08-24T17:39:55.660680-04:00 mighty kernel: fbcon: Taking over console
2026-08-24T17:39:55.660680-04:00 mighty kernel: mce: [Hardware Error]: TSC 0 ADDR 1ffffff8e7f3d7b MISC d0150fff00000000 PPIN 2b6be5531124007 SYND 4d000000
2026-08-24T17:39:55.660681-04:00 mighty kernel: PM: Magic number: 6:179:703
2026-08-24T17:39:55.660681-04:00 mighty kernel: IPID 500b0228a9a00
2026-08-24T17:39:55.660681-04:00 mighty kernel: mce: [Hardware Error]: PROCESSOR 2:a10f81 TIME 1787607585 SOCKET 0 APIC 5a microcode a10810c
2026-08-24T17:39:55.660681-04:00 mighty kernel: RAS: Correctable Errors collector initialized.
What I’d like to know: Am I the only one? I’d appreciate if anyone else with (especially) the Asus WRX90E-SAGE SE board would be willing to try reproducing at least the first issue.
(For the second issue, if I come up with a way to reproduce it that doesn’t involve wearing out your USB port & cable by plugging it a hundred times, I’ll add instructions.)
At this point I’ve run out of ideas on how to troubleshoot this further.
Addendum 1:
I found a way to reproduce Issue 2 without physically plugging in a device, and without needing a USB switch. Manually unbinding/rebinding the device from the driver can also trigger the crash. I verified this with my keyboard (which had device path 5-1.1.2.1.2 - yours will be different) using this loop:
(Edit: Updated the script to do both the unbind+bind, and to iterate more quickly.)
USB_DEV="5-1.1.2.1.2" # replace this with the USB device you want to test with
while true; do
echo -n 'unbind '
echo $USB_DEV | sudo tee -a /sys/bus/usb/drivers/usb/unbind >/dev/null
sleep 1
echo rebind
echo $USB_DEV | sudo tee -a /sys/bus/usb/drivers/usb/bind >/dev/null
sleep 1
done
I just let that run in the background until it crashed. So far both of the devices I’ve tried it with led to a crash eventually - first with the keyboard, then with my wireless mouse receiver.
Addendum 2:
I was able to work around both crashes by booting with usbcore.autosuspend=-1. I also found this bug report xhci_hcd: System lockup under CPU load during usbfs polling of USB devices on AMD platforms so my next step is to try the patch mentioned in the July 9th comment.
(Update: The proposed patch isn’t helping.)
(Final update: I replied with a proof of concept patch of my own that resolves the crashes.)