A new long time support linux kernel has been released. Let’s see its new feature.
This release introduces support of Direct I/O and asynchronous I/O for the loop block device. The advantages to use direct I/O and AI/O on read/write loop’s backing file are:
– double cache is avoided due to Direct I/O which reduces memory usage a lot;
– unlike user space direct I/O there isn’t cost of pinning pages;
– avoids context switches in some cases because concurrent submissions can be avoided.
The virtio-gpu driver now 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 opengl game while using the GPU acceleration capabilities of the host. This also requires running QEMU 2.5.
LightNVM adds support for Open-Channel SSDs, devices that share responsibilities with the operating system in order to implement and maintain features that typical SSDs keep strictly in firmware. LightNVM is a specification that gives support to Open-channel SSDs. LightNVM allows the host to manage data placement, garbage collection, and parallelism. Device specific responsibilities such as bad block management, FTL extensions to support atomic I/Os, or metadata persistence are still handled by the device.
In this release, and as a result from an effort that started two years ago, the TCP implementation has been refactored to make the TCP listener fast path completely lockless. During tests, a server was able to process 3,500,000 SYN packets per second on one listener and still have available CPU cycles – about 2 to 3 order of magnitude what it was possible before. SO_REUSEPORT has also been extended to add proper CPU/NUMA affinities, so that heavy duty TCP servers can get proper siloing thanks to multi-queues NICs.
This release also adds journalled RAID 5 support to the MD (RAID/LVM) layer and basic support for polling for specific I/O to complete, which can improve latency and throughput in very fast devices.
As always a very wide changes in drivers has been made. Check the full changelog.