Conveners
Android MC
- Mostafa Saleh (Google)
- Sumit Semwal (Linaro)
- Amit Pundir
- Karim Yaghmour (Opersys inc.)
- Lukasz Luba
- John Stultz (Google)
Description
The Android Micro Conference brings the upstream community and Android systems developers together to discuss issues and changes to the Android platform and their dependencies and interactions with the Linux kernel, allowing for collaboration on solutions for upstream.
Some highlights of progress made since last yearโs MC:
- Community consolidation around the aosp-devs.org organization
- An example of device longevity discussions: Pixel devices in the field were up-reved to 6.1: https://www.androidauthority.com/pixel-phones-kernel-upgrade-march-update-3532360/
- Per-app v2 mem cgroups were shipped w/ Android 16, and vendors are starting to make use of it.
- For the 16k page size effort, discussions on CMA minimum alignments lead to relaxing this requirement for 16KB to reduce memory overhead from CMA regions. And discussions on ELF padding page-cache read-ahead and fault-around lead to later guard regions blocking fault-around and conclusion that the readahead issue may not be worth the effort to solve (for which android proceeded with only limiting fault-around similar to guard regions).
- Feedback and discussion from maintainers around ublk helped prioritize development as Ming provided some pointers for offloaded lz4 de-compression into the kernel with only the metadata I/Os being served from user-space. Future enhancements and investigation include suspend support for ublk process, BPF offloading and device mapper-style I/O control.
- The GBL presentation at LPC sparked collaboration with U-Boot maintainers - who began experimenting with GBL- and caught the attention of ARM SystemReady and EBBR leads, leading to ongoing discussions around standardizing Android boot.
Potential discussion topics for this year include:
- Updates and next-steps on Generic Boot Loader efforts
- Issues around supporting both 4KB and 16KB devices
- Deprecation of Ashmem and Rust Ashmem
- Efficient metric collection using BPF (iterators)
- Android Virtualization framework (AVF), updates, support, use cases
- AutoFDO for Android userspace and kernel
- Binder Priority Inheritance
- KUNIT Testing
- Discussions on collaborating with the new AOSP model
MC leads:
- Lukasz Luba lukasz.luba@arm.com
- Amit Pundir amit.pundir@linaro.org
- Mostafa Saleh smostafa@google.com
- Sumit Semwal sumit.semwal@linaro.org
- John Stultz jstultz@google.com
- Karim Yaghmour karim.yaghmour@opersys.com
Running Android on RISC-V platforms has been a long-standing goal, filled with technical hurdles and real world economical evaluation.
Initially I proposed the idea at Andes Technology, it didn't pan out, leading me to pursue its realization at SiFive. However, due to org restructuring, I was eventually laid off from SiFive. (Hi Samuel ๐)
Ultimately, I returned to Andes to finish what I...
Android boot flow and GBL quick recap
ย ย - Current problems
ย ย - GBL updates
Android meets FIT (Flattened Image Tree)
ย ย - Existing boot headers structures vs FIT
ย ย - Adoption proposal
ย ย - Expected problems
Android + EFIStub
ย ย - UKI (Unified Kernel Image) adoption
ย ย - GBL as a EFIStub proposal
Content:
Android already supports 16kb page sizes and the number of devices supporting 16kb page sizes will increase in the future. A key challenge with 16kb page sizes is their potential to increase the memory footprint. In this presentation, we will explore several memory optimization strategies that partners should consider to help mitigate this issue, focusing on areas such...
Android currently collects telemetry data from devices in the field. While these metrics are important and can indicate overall system health issues, they are often lacking enough low-level system information that is necessary for finding root causes.
Android has been striving to improve BPF support to enable developers to extend the Linux kernel by creating BPF programs. This development...