26 votes

Linux gives up on 6-year LTS kernels, says they’re too much work. This maybe fine for PCs but could be bad for android.

2 comments

  1. Amun
    Link
    Ron Amadeo The plan to cut back down to two years isn't instant. The Linux community is still honoring the current end-of-life timelines, so 6.1, 5.15, 5.10, 5.4, 4.19, and 4.14 are still six...

    Ron Amadeo


    The plan to cut back down to two years isn't instant. The Linux community is still honoring the current end-of-life timelines, so 6.1, 5.15, 5.10, 5.4, 4.19, and 4.14 are still six years, but new kernels will only get two years.

    Linux Weekly News executive editor Jonathan Corbet announced the Linux kernel will return to two years of LTS support. "Each new longterm kernel usually starts with only a 2-year projected EOL that can be extended further if there is enough interest from the industry at large to help support it for a longer period of time." The reality was that everything received a six-year life span, and now that will no longer be the case.

    Corbet says, "There's really no point to maintaining [old kernels] for that long because people are not using them." The other big problem is the burnout from maintainers, which are often unpaid and could use a lot more support from the billion-dollar companies that benefit from using Linux.

    But what about Android? The original Linux's six-year long-term support was meant to help android and embedded devices.

    Two years seems like a fine support window for PCs, but what about Android? The original LTS extension was mainly made with Android and Internet of Things devices in mind—it was announced during an Android Linux talk by Google developer Iliyan Malchev. The problem was that on PCs, two years only represents the time between kernel updates, so that's a fine timeline. Embedded devices tend not to update the kernel, though, so those "two years" represent most of the development cycle and the entire consumer support window, and that's not long enough.

    Android kernel development process is a whole pile of forks

    The original picture Google painted in 2017 was that phones take two years to be developed and that the kernel is locked in near the beginning of the engineering process. The LTS kernel would be hitting end-of-life right around when the phone finally shipped, and customers would use obsolete kernels for the lifetime of their devices. The Android kernel development process is a whole pile of forks: First, Google forks from a new Linux LTS to make the "Android Common" kernel, then that is sent to SoC vendors like Qualcomm and forked for each model of SoC, then that fork is sent to device makers, which fork it again for each model of device. It takes a while.

    Kernel docs

    The Android kernel docs have a Linux "compatibility matrix" for each version of Android, and Android 14—releasing any day now—still supports launching new devices with Linux 5.4, a 4-year-old kernel. That's going to start a new window of support, remember, so even with a paltry two years of ownership, that's a six-year-old kernel. That's also just for new devices. You can upgrade to Android 14 from Linux 4.14, which goes back to 2017. You can see how Google arrived at the six-year number.

    Smartwatches

    There are also smartwatches to consider, where things are even worse. The Pixel Watch is so ashamed of its Linux kernel that it's not even listed in the settings, but the device launched in 2022 with Linux kernel 4.19, a 4-year-old kernel at the time.

    GKI

    Android's big advancement since 2017 is the GKI, Google's "Generic Kernel Image," which cuts down on the "fork of a fork of a fork" Android kernel development process.

    Even GKI phones still don't do major kernel updates, though. You get minor LTS security updates, but the Pixel 6, the first GKI phone, launched with Linux 5.10 and is still on Linux 5.10. That's a 3-year-old kernel.

    Link Long-term support for Linux kernel to be cut as maintainence remains under strain by Steven Vaughan-Nichols (ZDNet). This article goes into a bit detail

    11 votes
  2. vord
    Link
    I mean, the world has shifted substantially since the Linux 4.X years. Kernels get a lot less breakages between releases. I have a backup LTS kernel installed, but I've only needed to fall back to...

    I mean, the world has shifted substantially since the Linux 4.X years. Kernels get a lot less breakages between releases. I have a backup LTS kernel installed, but I've only needed to fall back to it once in a blue moon. Rarely ever even really need that, usually only dropping one minor release solves the problem.

    4 votes