Linux kernel,Why not upgrade to the latest 4.15?
-
Software UT Tweak Tool display,The current Linux kernel driver for ubuntu touch is 3.10.100, Why not upgrade to the latest 4.15?
-
Because every device is stuck on the kernel the vendor made for it. Most drivers are proprietary and we do not have sources, and also with all kernel updates many internal interfaces change.
Since phone vendors do care crap about recent kernels and Android itself is delivered with very old ones on the reference devices, nothing will change about this.
Only with fully open-sourced hardware this will change one day.
-
@flohack said in Linux kernel,Why not upgrade to the latest 4.15?:
Because every device is stuck on the kernel the vendor made for it. Most drivers are proprietary and we do not have sources, and also with all kernel updates many internal interfaces change.
I may be wrong about this (and I'd welcome correction if I am), but my understanding is that Project Treble (which is currently only supported on some very new phones) aims to help remedy this situation.
Also, I'm seeing more phones being shipped with kernel 4.4, which, although not the latest kernel, will at least be supported until Feb of 2022.
Of course, neither of the above helps with older phones that don't support Project Treble and that shipped with older kernels.
-
Treble does not remedy that situation. The Treble platform still contains user-space drivers that depend on a specific kernel version. They're based on 4.4 right now. The phones coming with 4.4 will not move to any newer version.
The only way to ship a newer kernel on any of these devices is to reverse engineer all of the hardware's programming interfaces and create open-source drivers that are included in the Linux kernel. This is a project that needs to be undertaken for every device and it takes (at minimum) months of intense work fraught with failure.
-
@UniSuperBox can you perhaps refer to some documents for details on that?
-
@unisuperbox said in Linux kernel,Why not upgrade to the latest 4.15?:
Treble does not remedy that situation [of upgrading to newer kernel versions].
Thanks much for the clarification. Thinking more about it, you're probably correct that Project Treble doesn't (at least for now) help with updating from an old kernel version to a newer kernel version.
Here's a snippet from an XDA Developers article that lead me to believe otherwise:
Google is also requiring new devices launched with Android Oreo to be configured to support Project Treble right from the start, which will hopefully make it easier to upgrade Linux kernel versions in the future, and reduce the efforts that will need to be put into backporting security patches.
Emphasis added. I suppose that the author means to refer to "minor" versions.
Even so, as discussed in another XDA Developers article in reference to IoT devices, even if Project Treble won't help get devices "to be consistently updated to new kernel versions in the near future, across all manufacturers, but simplifying the work to “just” applying the latest patch for the kernel version that they are on may be enough to convince some companies to provide that basic level of ongoing security for their devices." And that's a good thing.
-
I am more worried about this: https://en.wikipedia.org/wiki/Google_Fuchsia - it might render all our work useless since it will be probably a closed operating system for mobile phones. We can only hope that it is abandoned by Google like many other of their crazy ideas.
-
Thanks very much!
-
Treble is more about easing the process of updating the device and making it harder for an update to brick the device.
Treble requires the phone to maintain two system partitions, similar to ChromeOS. When an update comes in, it's applied to the unused system partition and then boot is switched it it.
Unfortunately, it doesn't solve the issue of drivers because, as stated above, it's simply a more safe and efficient update system. The drivers are still installed via the system update being applied to the unused partition as they were traditionally (they'd have to be, otherwise you'd have say 7.1 blobs on an 8.x systemand be unable to boot), and not coming from someplace else stored on the phone.
So sadly, other than making use of Treble's A/B partition update style, it doesn't help the issue of propreitary blobs.