0% found this document useful (0 votes)
44 views10 pages

LPC 2024 - Android Device Longevity

Uploaded by

byron7cueva
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
44 views10 pages

LPC 2024 - Android Device Longevity

Uploaded by

byron7cueva
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 10

Android Device Longevity

Android Kernel Support for Longer Device Lifetimes


Todd Kjos <tkjos@google.com>
Android Common Kernel (ACK) History 2016 - 2023
2016 and earlier: ACK is a patch repository for features and security patches
● Android Security Bulletin (ASB) cites CVEs and provides pointers to fixes in ACK

2017: GregKH announces 6-year LTS lifetime beginning with 4.4

2018 (Android 9): Pixel begins regular LTS updates


● In 2019, 92% of ASB-cited security exploits already fixed for Pixel via LTS

2020 (Android 11): Mandated LTS updates for ecosystem (beginning with 5.4)
● Devices shipping with Linux 5.4+ are required to perform LTS updates twice a
year to meet Android Security Patch Level (SPL) requirements

2021 (Android 12): GKI w/5.10+ kernels


● Google does LTS merge for core kernel on behalf of ecosystem
● Out-of-tree patches must, of course, still be handled by vendors/OEMs
ACK Lifecycle 2017-2023
Device lifecycle fits into kernel lifecycle

Event Relative Date Example

Upstream LTS kernel created End of Q4Y0 4.14: 11/2017

Android Platform Release Q3Y1 Android 9 (Nougat): 8/2018


Initial device launches

Android Platform Release Q3Y2 Android 10: 9/2019


Device launches allowed

Android Platform Release Q3Y3 Android 11: 9/2020


Device launches allowed

EOL Q1Y7 (last launch release + ~3.5y) 4.14 EOL: 1/2024

All of this relies on 6y of support for LTS kernels


LTS kernel lifetimes
see https://source.android.com/docs/core/architecture/kernel/android-common#support-lifetimes

Long-Term Launch Upstream Upstream Android


Supported EOL Support Life Extension

3.18 12/2014 5/2019 4.5y to 6y

4.4 1/2016 2/2022 6y none

Oh oh: 4.9 12/2016 1/2023 6y none


6-year lifetimes
didn't work due 4.14 11/2017 1/2024 6y none
to lack of
4.19 10/2018 12/2024 6y none
engagement
after 3-4 years,
5.4 11/2019 12/2025 6y none
so lifetimes are
being reduced 5.10 12/2020 12/2026 6y none

5.15 10/2021 10/2026 5y to 6y

6.1 12/2022 12/2026 4y to 6y

6.6 10/2023 12/2026 3y to 4y


ACK Lifecycle Now
Device lifecycle does not fit into kernel lifecycle

Event Relative Date Example

Upstream LTS kernel created End of Q4Y0 6.12: Q4 2024

Device Launch Q3Y1 Android 16: 8/2025

Device Upgrade Q3Y2 Android 17: 8/2026

Device Upgrade Q3Y3 Android 18: 8/2027

Device Upgrade + Kernel Uprev Q2Y4 Android 19 + 6.x: 2028

Kernel EOL Q2Y5 6.12 EOL: 7/2028


GKI Kernel Uprevs
● Many 2024+ devices will have support lifetimes of 7+ years Major Version Uprev from 6.6.A to 6.24.B:
● Replace android15-6.6 (2023 LTS) kernel
● The android15-6.6 kernel will EOL in July 2028 - less than 4 with android18-6.24 (2026 LTS) kernel
years after the 2024 devices launch ● Refactor out-of-tree drivers on new base
● Perf/Power Tuning
● These devices must Uprev to a later kernel version prior to EOL
● Uprevs will normally be done at the same time as the device
android15-6.6
upgrades to a new Android platform release
● Provides incentive for SoC vendors and OEMs to upstream
drivers
android18-6.24
● Most of the work on drivers that implement SoC and Board
functionality will already have been completed as part of
development of 2027 products by SoC vendors and OEMs
What we are doing to help with kernel uprevs

Performance Regression Monitoring on android-mainline

GKI DDK v2 to manage out-of-tree drivers


● Features
● Build against local sources
● Build against prebuilts
● Build against a remote build
● Easy Setup
● Declare Dependencies
● Build
● Easier kernel uprev
● Modify Dependencies
● Fix Build/Fix Issues
Discussion

What are you most nervous about regarding upgrading your kernel version on devices in the field?

What tools are we lacking that would help you?

What metrics should we be watching to lower the risk of performance regressions on uprev?
Thank you!
Todd Kjos <tkjos@google.com>

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy