After upgrading my ASUS vivobook (Intel Core Ultra 7) to Fedora 43 KDE, my system crashes after 3-4 hours working.
It starts ok, but after a few hours, systemd-udevd starts consuming 100% of one core and starts eating RAM until systemd-oomd starts killing processes and eventually the system crashses.
Sometimes it takes more time to start failing, but every time it eventually fails.
It’s happened with kernel 6.17-5 and also with just-updated 6.17-6
I’ve been having a similar issue on Fedora 43 & 6.17.7. After a few hours the memory usage spikes to 100% seemingly randomly and it’ll kernel panic “System is deadlocked on memory”. If I check htop right before the crash I also notice systemd-udevd as the culprit.
At first I thought it was a RAM issue so I ran memtest86 overnight, however it reported no errors.
Next I checked udevadm monitor which would output the same message hundreds of times per second:
KERNEL[836.223349] change /devices/virtual/thermal/thermal_zone1 (thermal)
KERNEL[836.223704] change /devices/virtual/thermal/thermal_zone1 (thermal)
UDEV [836.224307] change /devices/virtual/thermal/thermal_zone1 (thermal)
KERNEL[836.225016] change /devices/virtual/thermal/thermal_zone1 (thermal)
KERNEL[836.225144] change /devices/virtual/thermal/thermal_zone1 (thermal)
UDEV [836.225385] change /devices/virtual/thermal/thermal_zone1 (thermal)
This is probably the problem, cat /sys/class/thermal/thermal_zone1/type reports “INT3400 Thermal” which could indicate a bug with Intel’s thermal driver.
A possible temporary fix would be sudo systemctl stop thermald but this could lead to overheating, especially on your laptop. Otherwise, we may just have to wait for a fix in a future kernel update.
We need more details in order to understand the issue(s) and determine if they are symtoms of one underlying bug. man 8 systemd-udevd has many ways to increase the information provided by udevd:
The behavior of the daemon can be configured using udev.conf(5), its command line options, environment variables, and on the kernel command line, or changed dynamically with udevadm control.
Start with sudo udevadm -d monitor in a terminal window.
It is usually best if you can ensure that linux packages and vendor firmware are fully updated so you aren’t chasing a solved problem.
After two hours, the problem appeared and top looked like this after a while:
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
621 root 20 0 6386388 6.1g 8568 R 99.3 19.7 3:17.53 systemd-udevd
I tried unplugging it. Immediately, the messages stopped appearing but systemd-udevd kept eating memory. Then, after 5-10 minutes, udevadm reported this several times:
Note: the high cpu usage survives a systemctl soft-reboot, but after said soft-reboot “udevadm -d monitor” shows nothing.
Also, the high CPU usage began while I was sharing an USB key (aka /dev/sde) with an OVH server remotely, via their own java kvm applet. Since all the reported activity was on /dev/sde, I suppose this should be related.
Sadly I was not able to reproduce this anymore, but it was related to logspam from a Samsung USB drive showing up as /dev/sda. The output was the same as the one mentioned above (with /dev/sde).
I have this exact issue. The stop thermald does nothing, I can only restart it or kill it with PID to free the memory, but a new process spawns immediately.