If ever you needed a good reason to upgrade your old CPU, it seems a “show-stopping” bug has found its way into the Linux 4.18 stable kernel series – though its only effecting older hardware, mostly the Intel Core 2 Duo era processors. This bug in Linux 4.18 kernel currently has two submitted bug reports on the bugzilla tracker.
The Core 2 Duo series is not all that uncommon, despite being an older CPU, it was popular in its day and continues to be popular in more developing countries. Because there are Linux distros that specifically target developing countries with older hardware, this bug could be a bit of a headache for a lot of people.
The bug basically causes an early boot CPU stall and a total system freeze when booting on Linux 4.18 up through 4.18.5, and it has been traced back to clocksource: Remove kthread as the problematic commit.
clocksource: Remove kthread
The clocksource watchdog uses a work to spawn a kthread to run the watchdog. That is about as silly as it sounds, run the watchdog directly from the work.
If the Linux 4.18 kernel is built with that commit reverted, the Core 2 Duo processors will run without any problem on this latest Linux kernel. Another solution to this bug is to boot the system with the kernel parameter of clocksource=hpet – although if you’re running on hardware as old as the Core 2 Duo, which saw its last series release in ~2010, you could probably just choose an older stable Linux LTS release to boot your system, while waiting for the situation to be fixed in the latest kernel and back-ported to the 4.18 kernel series.