2015 saw a lot of controversy about how Linus Torvalds directs the Linux project. But, that didn't stop him from delivering the latest update of the Linux kernel: Linux 4.4 on time.
This release, while not a blockbuster, like Linux 4.0, with built-in, no-reboot patching, has many outstanding features. The most significant of these is hidden deep in the notes.
With 4.4, Linux now offers much improved support for Intel's new Skylake processor family. Intel claims that Skylake has double the performance and triple the battery life of that five-year old laptop still in your bag because it's "good enough." Without deep operating system support, such as Linux now offers, that improved functionality is largely hidden.
The Linux kernel 4.4 also offers better support for ARM's 64-bit processors and Qualcomm's high-bandwidth capable Snapdragon 820. The popular makers' Raspberry Pi system also has better graphics support thanks to a beta Kernel Mode Setting (KMS) driver.
People who run Linux in a virtual machine (VM) will be pleased that the new virtio-gpu driver enables virtualization guests to use the host graphics card efficiently. "In this release, it allows the virtualization guest to use the capabilities of the host GPU to accelerate 3D rendering. In practice, this means that a virtualized Linux guest can run a game while using the host's GPU acceleration,. This makes running games on Linux VMs much faster. To use this you'll need a VM that uses Linux's native VM hypervisor, KVM, and QEMU 2.5."
TCP/IP networking has been given a real kick in the pants. The TCP listener fast path is now completely lockless. That means a server can process 3,500,000 SYN packets per second on one listener and still have available CPU cycles. That's two to three orders of magnitude faster than before. It's going to be a lot harder to knock out a Linux web server with some kinds of Distributed Denial of Service (DDoS) attacks.
Of course, Linus wouldn't be Linus without a jab at some bad coding. This time the x86-Android team got tagged. Torvalds wrote:
The changes since rc8 aren't big. There's about one third arch updates, one third drivers, and one third "misc" (mainly some core kernel and networking), But it's all small. Notable might be unbreaking the x86-32 "sysenter" ABI, when somebody (*cough*android-x86*cough*) misused it by not using the vdso and instead using the instruction directly.
Joking aside, this looks to an excellent step forward, especially in processor support and networking, for Linux.