Linux users are set to get a new way to identify faulty CPUs, with Linux kernel version 6.1.
The new feature will allow users to print the socket and core which are likely responsible when a segmentation fault occurs, which should allow users to spot if a particular CPU/core is routinely causing problems.
This might not mean much to the armchair Linux enthusiasts, but sysadmins running a fleet of Linux servers stand to benefit.
How does the feature work?
You can enable the new feature by adding “print()” to “show_signal_msg()”, which will print the CPU, core, and socket at the time of the segfault.
This particular printk can be controlled by going through /proc/sys/debug/exception-trace, and you can see the official documentation (opens in new tab) for more information.
The authors of the Kernal documentation, Rik van Riel and Borislav Petkov, acknowledge that the feature “is not perfect” as “the task might get rescheduled on another CPU between when the fault hit, and when the message is printed”.
However, they did say that “in practice, this has been good enough to help people identify several bad CPU cores”.
If you’re a developer and currently using your Linux distro for demanding high-performance use cases you’re unlikely to be considering using this feature in isolation. You’re probably going to want to also employ common CPU stress testers such as Prime95 or Aida64.
The update will land during October as part of the Linux 6.1 merge window. The previous Linux update, version 6.0, has only recently arrived for testing.
Though Linus Torvalds claimed that “there’s nothing fundamentally different about” version 6.0, the update offered numerous changes, 60% of which were driver updates, but also covered GPU, networking and sound.
- Interested in giving Linux ago? Checkout our guide to the best Linux laptops
Via Phoronix (opens in new tab)