Linux Kernel 4.20: Crocodiles, STIBP, and Hugs


Linus Torvalds unleashed kernel 4.20, dubbed Shy Crocodile, on the world this past Sunday. There was speculation whether Torvalds would make the jump from 4.19 to 5.0, as he did when he skipped 3.20 and went with 4.0 instead. In the end, he stuck with 4.20, and 5.0 will probably be the number of the next kernel after this one.

Apart from all that, probably the largest will-he-won’t-he debate revolved around STIBP. STIBP stands for Single Thread Indirect Branch Predictors, and that mouthful is a preventive measure against the Spectre/Meltdown bugs. When STIBP was tried out during the 4.19 cycle, developers ended up removing it because it was found to have a negative impact on system performance, slowing down execution of some processes up to 50%. The matter was the subject of a long discussion on the Linux Kernel mailing list, with some developers like Andi Kleen arguing that the patch should be reverted entirely. Torvalds, however, pointed out there was a mid-way solution: “[W]e default to something that doesn’t kill performance. Warn once about it, and let the crazy people say «I’d rather take a 50% performance hit than worry about a theoretical issue»“.

After much work, STIBP is back in 4.20, but with performance improvements and allowing processes to choose whether they need to use it or not, because, as it turns out, many don’t.

What the hug?

On what should be a lighter note, but will probably spark outrage anyway (because reasons), Jarkko Sakkinen has taken on himself the thankless job of writing a patch that will cleanse the source code comments of swear words. Instead of just nuking them, the patch changes f-bombs for “hugs”. Hence, expressions become “Get the hug out!”, which implies you have your own personal cache of hugs and you are required to extract and spend one; and “Hug off!”, which must be some kind of endurance event.

Before anybody gets all hot under the collar, it is worth noting that, (a) Sakkinen’s solution is hilarious; and (b) no more reasons should be necessary, but here’s one anyway: such colorful language probably shouldn’t be in code that is easily readable by everyone and that is deployed all over the world to millions of people and businesses. Better reserve cussing for audiences which are more appreciative of the genre, namely Twitter followers and such.

More things to look forward to in Linux 4.20

  • The open-source NVIDIA Nouveau driver has now got initial HDMI 2.0 support. HDMI 2.0 is what you are going to need to watch movies or play games on 4K displays at 60FPS, since it affords a much larger bandwidth than the currently more common HDMI 1.4 protocol.
  • Chinese sysadmins will be happy to know that Linux 4.20 supports Hygon Dhyana CPUs. These CPU’s are based on AMD’s Zen microarchitecture and are the result of an AMD-Chinese joint venture that aims to bring domestic x86 chips to data centers.
  • In more playful news, Linux 4.20 supports the Xbox’s S Controller’s rumbling (meaning it vibrates for added excitement (?) during game play), and there is a working driver for Apple’s Magic Trackpad.

As always, you can find more information about Linux 4.20 by going to the source announcement on the Linux Kernel mailing list, checking out the in-depth articles at Phoronix and by reading the Kernel Newbies report.