The Many New Features of The Linux 4.20 Kernel
With Linus Torvalds having just released Linux 4.20-rc1, here is our original feature overview looking at the major changes merged over the past two weeks for this new kernel. The Linux kernel will be ending 2018 on a high note with this kernel bringing more than 350 thousand lines of new code!
This kernel began its life two weeks ago not knowing whether it would be called Linux 4.20 or Linux 5.0. As with the transition from Linux 3.20 being renamed to Linux 4.0, Linus Torvalds previously disclosed his preference after his fingers and toes are counted, to move onto the next big version bump. In today's announcement, Linus Torvalds decided to stick to 4.20.
Linux 4.20 brings a lot of prominent changes from AMD Vega 20 support getting squared away, AMD Picasso APU support, continued Intel Icelake enablement, Intel 2.5G Ethernet support, the removal of Speck, peer-to-peer PCI memory support, Apple Trackpad 2 support, Logitech high-resolution scrolling, support for Hygon Dhyana CPUs, Snapdragon 835 support, and other new hardware support additions and software features.
DRM / Graphics Drivers
- AMD Picasso APU support as well as Raven 2 APU support.
- The AMD Vega 20 7nm workstation GPU support is now largely squared away for when this graphics card will be released in the months ahead.
- VCN JPEG acceleration for Raven Ridge APUs in conjunction with Mesa 18.3 user-space code.
- GPUVM performance improvements for the AMDGPU kernel driver.
- Continued work on the Intel Icelake "Gen 11" graphics support.
- The Intel DRM driver now has full PPGTT support for Haswell/Ivy/Valley View hardware.
- The open-source NVIDIA Nouveau driver has initial HDMI 2.0 support.
- The NVIDIA Xavier "Tegra194" SoC has initial display support.
- Qualcomm Adreno A6xx performance improvements with the Freedreno MSM DRM code.
- Virtual KMS (VKMS) has initial cursor and GEM support.
- The Cedrus VPU driver has been mainlined along with a new media request API.
CPUs / Processors
- Support for the Hygon Dhyana CPUs that are the new Chinese data center processors based on AMD Zen.
- A new CPU architecture port is for C-SKY 32-bit CPUs as another Chinese CPU architecture.
- AMD/Intel x86 CPUs now have nested virtualization enabled by default for KVM.
- Early work on AMD Zen 2 CPU enablement while more is on the way for future kernel cycles.
- Scheduler improvements that should benefit asymmetric CPU systems like ARM big.LITTLE processors.
- Faster context switching on IBM POWER9.
- Minor work on the IBM s390 architecture.
- Better Intel IOMMU debugging with DebugFS support.
- Linux x86/x86_64 optimizations.
- Cross-hyperthread Spectre V2 mitigation with Intel STIBP.
- Qualcomm Snapdragon 835 SoC support along with the HiSilicon Hi3670, many NVIDIA Tegra improvements, GTA04A5 phone support, and more. There is also now mainline ARM SBC support for the Orange Pi Zero Plus2, Orange Pi One Plus, Pine64 LTS, Banana Pi M2+ H5, 64-bit Banana Pi M2+ H3, ASUS Tinker Board S, RockPro64, Rock960, and ROC-RK-3399-PC.
File-Systems / Storage
- RAID10 improvements for MD RAID / Linux Software RAID.
- Several Btrfs performance improvements.
- XFS and EXT4 maintenance updates.
- New F2FS features, including a checkpoint mouint option for atomic updates of the entire file-system.
- Faster FUSE performance for file-systems in user-space.
Networking & Other Hardware
- Intel 2.5G Ethernet support was added via the new "IGC" driver. Hopefully in 2019 we find 2.5G Ethernet becoming standard for new Intel hardware.
- PCI peer-to-peer memory being merged for benefiting use-cases from device-to-device memory copies from NICs directly to SSD storage or for multi-GPU deployments.
- A lot of new sound cards supported including the Creative Sound Blaster ZxR and AE-5 high-end cards.
- Xbox One S controller rumble support along with Logitech high-resolution scrolling and the new Apple Trackpad 2 driver are among the input hardware improvements.
- Better x86 32-bit hibernation support.
- LG Gram laptop support with various feature bits now being supported thanks to a new driver.
Security & Other
- The Linux kernel is now VLA-free for variable length arrays to improve code portability and better performance and security.
- The XArrays data structure was finally merged.
- More code cleaning that is another step towards building the mainline Linux kernel with the LLVM Clang compiler or even Intel ICC.
- Speck crypto code was removed due to this crypto algorithm being quite controversial with its roots inside the NSA.
- Continued fixings for the Year 2038 problem.
- The STACKLEAK plug-in has finally been merged to mainline.
- The staging area received updates around the VirtualBox KMS/DRM driver having atomic mode-setting, EROFS file-system updates, and continued work by Google on their GASKET driver framework.
Sadly not making it into Linux 4.20 is the highly anticipated WireGuard secure VPN tunnel that is held off until the next cycle. The FreeSync / Adaptive-Sync / HDMI VRR bits are also being held off for DRM until the next cycle as a highly sought after feature for the open-source AMD graphics driver stack. Stay tuned for my Linux 4.20 kernel benchmarks and more that will begin in the days ahead. If you appreciate my daily Linux testing, open-source news coverage, and more, show your support by going premium.
If you enjoyed this article consider joining Phoronix Premium to view this site ad-free, multi-page articles on a single page, and other benefits. PayPal or Stripe tips are also graciously accepted. Thanks for your support.