Speaker
Description
Abstract
Android platform pipelines (camera, video, graphics, XR and AI) on
modern SoCs routinely span Linux drivers and firmware running on
DSPs, ISPs, NPUs, and other remote processors. dma_fence and
sync_file work well when a fence's state and callbacks are owned
by Linux kernel participants, but don't natively support a fence
that a remote, non-Linux core needs to create, wait on, or signal
directly — every such handoff today either routes through the
Linux host or requires a vendor-specific bridge.
We've developed Synx, a SoC-wide synchronization framework built
around a global handle table with distributed reference counting,
transport-agnostic remote signaling, and dma_fence/sync_file
interop at the edges. Direct signaling between any two remote
processors without routing a wait/signal through the Linux host
cuts latency and removes an unnecessary CPU wake-up, which both
saves power and frees up cycles that would otherwise be
spent bouncing a fence update through the host core. The solution
has shown significant power and performance benefits in the last
few generations of Qualcomm mobile and XR chipsets, and is
gathering more use cases, specifically ones involving AI pipelines.
An RFC describing the object model and the specific gaps versus
dma_fence has been posted to dri-devel and linux-arm-msm (refer
supporting links).
Christian König redirects us to solve remote signaling in
userspace: a userspace fence/signaling-point model based on
dma-buf, citing XE's userspace-wait support, eventfd, and ROCm
events as precedent, with possible common ground around a
framework centered on eventfd.
Discussion points
(Supposed to evolve as email thread develops)
- discuss the solutions from other Android platform vendors
- discuss if the eventfd/userspace fence direction is viable for
camera/video/XR-style pipelines that care about avoiding a
host-CPU wake-up on the signaling path.
- scope as standalone or extend current framework. Define interfaces.
Key people
- Sumit Semwal
- John Stultz, Karim Yaghmour
- Christian König (engaged on the RFC thread)
- Faith Ekstrand / Xe authors (cited by König)
- Dmitry Baryshkov, Srinivas Kandagatla (Driver Core MC; also
Qualcomm colleagues who've reviewed Synx internally)
Supporting links
- https://lore.kernel.org/dri-devel/5f90bb35-994e-48bd-bf49-3001dcefa2ee@amd.com/
- https://lore.kernel.org/linux-arm-msm/20260806051915.2234481-1-pravinku@quicinc.com/
- formatted duplicate @ https://lore.kernel.org/dri-devel/20260806051915.2234481-1-pravinku@quicinc.com/