How Google's Android Maintains A Stable Linux Kernel ABI
While the Linux kernel is well known for not offering a stable API/ABI, Google and other enterprise Linux distribution vendors tend to aim at providing their own stable ABI for the lifespan of their products. Google engineers talked in Portugal this week at Linux Plumbers Conference 2019 about some of their means to maintaining a stable API/ABI for Android's Linux kernel.
Google obviously aims for a stable kernel API/ABI in order to make it easier for vendors to provide non-mainline drivers that survive kernel updates, having the same ABI across different vendor/device kernels, and related needs. Matthias Männich of Google outlines their Android stable kernel ABI approach in this slide deck.
Similar to other vendors, Google leverages libabigail as part of its ABI monitoring to check for any breakage. Google's Project Treble has also made most of the Android user-space work independent of kernel/device while "Android Next Generation" aims to make kernel modules more portable between kernel images and devices.
Google obviously aims for a stable kernel API/ABI in order to make it easier for vendors to provide non-mainline drivers that survive kernel updates, having the same ABI across different vendor/device kernels, and related needs. Matthias Männich of Google outlines their Android stable kernel ABI approach in this slide deck.
Similar to other vendors, Google leverages libabigail as part of its ABI monitoring to check for any breakage. Google's Project Treble has also made most of the Android user-space work independent of kernel/device while "Android Next Generation" aims to make kernel modules more portable between kernel images and devices.
54 Comments