Conveners
Android MC
- Lukasz Luba
- Karim Yaghmour (Opersys inc.)
- Amit Pundir
- Sumit Semwal (Linaro)
- John Stultz (Google)
- Mostafa Saleh (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
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
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...
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...
The transition to a 16kB base page size creates a significant compatibility issue for legacy ELFs built with 4kB segment alignment. This misalignment can place Read-Execute (RX) and Read-Write (RW) segments within a single page, which would require insecure RWX mappings. While recompiling is the ideal fix, it is often impossible for apps that depend on **unmaintained, closed-source third-party...
Content:
Android's transition to 16kb page sizes necessitates that hardware components work seamlessly with 16kb page sizes in order to get optimal performance. This presentation will focus on hardware and software recommendations for devices running with 16kb page sizes.
This section will highlight the hardware design decisions that need to be made to support 16kb page sizes...
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...