Every been miffed when reading about a major new Ubuntu release only to learn it does not include the latest Linux kernel?
Well, that’ll soon be a thing of the past.
Canonical has announced a major change to its kernel selection process for future Ubuntu releases. An “aggressive kernel version commitment policy” pivot means it will now seek to ship the latest upstream kernel code at the time of a new Ubuntu release.
Which is a huge change.
It effectively means every new Ubuntu release (the ones that come out in October and April) will include the latest upstream Linux kernel in development, even if that new kernel version hasn’t had a stable release (and received a newspaper-graphic-topped rundown on this site).
As is, a new Ubuntu release will typically ship with the most recent stable Linux kernel release at the time of the kernel freeze milestone in the Ubuntu development cycle. Kernel freeze tends to be ~2 months before the final release.
“This approach would guarantee stability on the appointed release day, but was proving unpopular with consumers looking to adopt the latest features and hardware support as well as silicon vendors looking […] to align their Ubuntu support,” Canonical’s Brett Grandbois explains.
But to “provide users with the absolute latest in features and hardware support, Ubuntu will now ship the absolute latest available version of the upstream Linux kernel at the specified Ubuntu release freeze date, even if upstream is still in Release Candidate (RC) status.”
For example, Ubuntu 23.10 shipped with Linux 6.5 when released on October 12 (Linux 6.6 went stable on October 30th). Ubuntu 23.04 included Linux 6.2 (Linux 6.3 came out less than a week a later).
Had the new selection policy been in play then, both would’ve had the latter versions.
Here’s a chart illustrating the new approach to kernel version selection for future Ubuntu releases:
What if there’s a major last-minute issue that means that RC kernel doesn’t go stable for several more weeks after an Ubuntu release? Well, Canonical say “the die is cast” — it’ll have to deal with it.
A new Linux kernel is released every 2-3 months on a flexible release schedule with no fixed deadline. A solid month or so of ‘release candidate’ (RC) builds are issued until Linus and his team are happy, sign off, and announce it as stable.
In contrast, Ubuntu has a fixed release schedule, and a kernel freeze milestone. This is needed to make sure the kernel is patched, integrated, and reliable for all users (not just home users; the distro is used by businesses, cloud, mission-critical ops, etc).
“Just package the new kernel and release it as an update” is an easy sounding solution, but not practical: it doubles the work for Canonical’s engineers who need package, test, patch 2 kernels, and commit to ongoing concurrent support for the duration of a release – 9 months for interim, 5 years for LTS).
This change does not meant Ubuntu is following System76 and bringing new kernel versions to Ubuntu as updates.
The kernel series at the time of release is (barring HWE in LTS point releases) the only supported kernel series. And an Ubuntu Linux kernel is not the same as a mainline one: it has tweaks and patches for technologies, OEMs, etc which Canonical support.
But users of Ubuntu 24.04 LTS stand to benefit from this change. HWE updates bring the kernel from interim releases to LTS users. If even-newer kernel versions ship in interim releases it means even-newer kernel versions can filter down the back-port pipes.
Win-win, no?