Three months after the last kernel release, Linux kernel 5.19 is finally here. This exciting release brings many improvements to every aspect of the kernel and opens up possibilities with new hardware.
The most interesting part is that Linux creator Linus Torvalds used an Apple MacBook, the Arm version, to announce this release.
Don’t get your pitchfork out just yet. Torvalds used Asahi Linux, a project aimed at adding Linux support to Apple’s Arm-based Silicon Macbooks.
Personally, the most interesting part here is that I published (and am writing this) on an arm64 laptop. It’s something I’ve been waiting for long Time, and thanks to the Asahi team, it’s finally a reality. We’ve had arm64 hardware running Linux for a long time, but so far none of them have really been usable as a development platform.
That is interesting. And this is the third time Torvalds has used Apple hardware for Linux development.
Linux kernel 5.19: What’s new?
As with all previous releases, the Linux kernel 5.19 has many technical changes. However, there are few important ones that will directly impact users, so we will focus on those here.
If you are interested in all low-level code changes, you can refer to the official changelog.
LoongArch CPU architecture support
It’s been interesting to see how Chinese chipmakers have been trying to catch up with Intel and AMD in recent years. One way to do this is to create their architectures, which are generally compatible with existing architectures.
One of the more successful of these companies is Loongson. However, due to their new architecture, software support for these CPUs was fairly limited.
As of this release, these CPUs are initially supported (it doesn’t work for boot) and packages will likely be ported to them soon.
With Linux Kernel 5.20, we should see further progress in this regard.
32-bit RISC-V apps to 64-bit RISC-V
As with recent releases, Linux Kernel 5.19 significantly improves support for the open-source RISC-V architecture. This time it’s in the form of allowing 32-bit RISC-V apps to run on 64-bit RISC-V systems.
Very few 32-bit RISC-V CPUs can run Linux, which means very few Linux packages have been developed for them. And these packages already have 64-bit counterparts.
While its usefulness is limited, it’s good to see RISC-V being treated as a best-in-class architecture and receiving further enhancements to bring it closer to mainstream feasibility.
Improved Arc Alchemist support
It’s no surprise that Intel’s initial launch of the Arc Alchemist GPU has been a disaster so far, Linux Kernel 5.19 is the first release that one might expect to be able to use these GPUs on Linux.
This release finally brings compute support to the Linux kernel. It’s a bit surprising that this code wasn’t merged sooner, but at least the support is there now.
The other big Arc improvement is significantly better power management. This comes in the form of a small change in Linux’s PCIe subsystem, which treats the Arc GPUs as unbounded and allows for PCI Express Active State power management in far more configurations.
Essentially, this change means the GPU can now go into an ultra-low power mode when not in use, resulting in significant power savings.
Improved ARM SoC support
This release adds support for several new ARM SoCs. This time, 7 new SoCs have been added to the list, specifically:
- Renesas RZ/G2UL (R9A07G043)
- Renesas RZ/V2M (R9A09G011)
- Renesas R-Car V4H (R8A779G0)
- Broadcom BCM47622
- Mediatek MT8195 (Kompanio 1200)
- NXP i.MXRT1050
In addition, Apple’s M1 chip also received improved support. This comes from a new driver for the on-chip NVMe controller. Thanks to the contribution of the Asahi Linux project, users can now take advantage of NVMe storage on their Apple Silicon Macs.
Significantly reduced startup times for Azure VMs
Azure users can look forward to a good improvement. Thanks to a contribution from Microsoft, Azure VMs using multiple GPUs can reduce their boot times by up to 3 minutes!
To achieve this, Microsoft modified its PCI Hyper-V driver to avoid setting “PCI_COMMAND_MEMORY”, which prevents the driver from sending/receiving oodles of unnecessary data from each GPU, resulting in about 14 seconds boot time per GPU can be saved.
In addition to the above, Linux Kernel 5.19 also includes
- Raspberry Pi Sense Hat Joystick Drivers
- Various BTRFS improvements
- New Intel IFS driver
- Intel Raptor Lake P graphics support.
- Erlensee improvements.
- Initial support for AMD RDNA3 graphics.
- Performance optimizations as reported by Phoronix.
Overall, these changes make for a pretty decent release. While there are no major changes, Linux Kernel 5.19 continues to build on the great work of the last few Linux releases.
How do I install Linux kernel 5.19?
If you’re using Arch Linux or Fedora, you’ll be able to upgrade with ease shortly. However, if you use other Linux distributions (Pop!_OS may be an exception to a degree), you may not get an upgrade.
So if you’re adventurous (and you know what you’re doing), you can find the newer kernel in the Linux Kernel Archives. You can download the tarball to test it.
However, we recommend waiting for your Linux distribution to release an update if you don’t want to take any chances. It’s best to stick with what comes standard for your Linux distribution.