Preparing the Android kernel
Google plans to change the process of preparing the Linux kernel for Android. Currently, before the kernel is ready for use on the target Android device, a number of actions are performed on it.
The circuit looks something like this:
LTS Kernel Linux → Android Common Kernel → Vendor Kernel → OEM/Device Kernel
First, Google creates a fork of the regular LTS Linux kernel, then a lot of patches that are specific to Android phones are applied to it. Thus, the core is obtained – Android Common. Then chip makers like Qualcomm, Samsung or MediaTek fork Android Common and form the Vendor Kernel for their chips. Then the OEM / Device Kernel is formed from the Vendor Kernel for hardware support for a specific device.
Thus, before the initial kernel reaches the final state, you have to go a long way in applying patches and other preparatory actions. This process can be delayed for a long time, you have to solve a lot of problems, catch errors, and conduct testing cycles.
Google has made the decision to “close the gap” between the original Linux kernel and the final Android kernel. Their goal is to form a core that can be handed over to chip makers right away. To do this, Google developers are going to make some of the changes required for Android into the main Linux kernel, and then form the Generic Kernel Image, which will consist of the main kernel and a number of additional modules.
The plan is to move all hardware-specific code from a common kernel into modules that hardware manufacturers will add. For this, a software interface will be prepared. The Linux kernel will contain appropriate calls (hooks), which will allow hardware manufacturers to add specific code without affecting the main kernel branch.
The current multi-stage scheme requires a lot of labor to prepare the final kernel, and does not allow for prompt updates. For example, many Android smartphones and tablets use older kernels and never update them.
The new kernel provisioning model will enable hardware vendors to receive and apply kernel updates, including vulnerability fixes, much faster.