Description
Building on the Treble and Generic System Image work, Android is
further pushing the boundaries of upgradibility and modularization with
a fairly ambitious goal: Generic Kernel Image (GKI). With GKI, Android
enablement by silicon vendors would become independent of the Linux
kernel running on a device. As such, kernels could easily be upgraded
without requiring any rework of the initial hardware porting efforts.
Accomplishing this requires several important changes and some of the
major topics of this year's Android MC at LPC will cover the work
involved. The Android MC will also cover other topics that had been the
subject of ongoing conversations in past MCs such as: memory, graphics,
storage and virtualization.
Proposed topics include:
Generic Kernel Image
ABI Testing Tools
Android usage of memory pressure signals in userspace low memory killer
Testing: general issues, frameworks, devices, power, performance, etc.
DRM/KMS for Android, adoption and upstreaming dmabuf heaps upstreaming
dmabuf cache managment optimizations
kernel graphics buffer (dmabuf based)
SDcardfs
uid stats
vma naming
vitualization/virtio devices (camera/drm)
libcamera unification
These talks build on the continuation of the work done last year as reported on the Android MC 2018 Progress report. Specifically:
Symbol namespaces have gone ahead
There is continued work on using memory pressure signals for uerspace low memory killing
Userfs checkpointing has gone ahead with an Android-specific solution
The work continues on common graphics infrastructure
If you are interested in participating in this microconference and have topics to propose, please use the CfP process. More topics will be added based on CfP for this microconference.
MC leads
Karim Yaghmour karim.yaghmour@opersys.com, Todd Kjos tkjos@google.com, Sandeep Patil sspatil@google.com, and John Stultz john.stultz@linaro.org
The Kernel's API and ABI exposed to Kernel modules is not something
that is usually maintained in upstream. Deliberately. In fact, the
ability to break APIs and ABIs can greatly benefit the development.
Good reasons for that have been stated multiple times. See e.g.
Documentation/process/stable-api-nonsense.rst.
The reality for distributions might look different though. Especially
- but not...
An update on how we plan to enable multimedia testing on our 'cuttlefish' virtual platform. Overview of missing components for graphics virtualization.
The libcamera project was started at the end of 2018 to unify camera support on all Linux systems (regular Linux distributions, Chrome OS and Android). In 9 months it has produced an Android Camera HAL implementing the LIMITED profile for Chrome OS, and work is in progress to implement the FULL profile. Two platforms are currently supported (Intel IPU3 and Rockchip ISP), with work on...
Topic will discuss how Android framework utilizes new kernel features
to better handle memory pressure. This includes app compaction, new
kill strategies and improved process tracking using pidfds.
To discuss recent developments and directions with DMABUF:
* DMABUF Heaps/ION destaging
* Better DMABUF ownership state machine documentation
* DMABUF cache maintenance optimizations
* Kernel graphics buffer idea
A short update on the status of DRM/KMS ecosystem adoption and how Google is improving verification of the DRM display drivers in Android devices.
Android has been using an out-of-tree schedtune cgroup controller for
task performance boosting of time-sensitive processes. Introduction of
utilization clamping (uclamp) feature in the Linux kernel opens up an opportunity to adopt an upstream mechanism for achieving this goal. The talk will present our plans on adopting uclamp in Android.