| Kite - Bootstrap Admin Template

Linaro Connect 24

secure dmabuf memory sharing between VMs using mem-buf driver

Select an option

Linux kernel

Currently, there's no existing driver to transport secure dmabuf memory between one or multiple VMs. Here, we introduce a new kernel driver called "mem-buf" that can support dynamic memory lending from one VM to another which is currently used by Qualcomm. One VM (secondary VMs) can do remote alloc requesting the Primary VM to lend some memory temporarily at start of a usecase and can relinquish the memory once usecase ends. The Primary VM then can reclaim the memory afterwards. Additionally, the memory that is donated from one VM to another would need to be added to the buddy allocator for system heap usage. This is mainly used for secure Display usecases. The mem-buf driver acts as an upper layer framework of dmabuf extending ioctls for memory lend/reclaim/share requests from userspace. A type-1 hypervisor (Gunyah hyp) acts as an intermediary for memory sharing requests between the VMs. Here we will describe more details about this new driver and the memory sharing call flows between the VMs.

No slides available.

Presented by

Profile Picture
Sudarshan Rajagopalan
Staff Engineer, Linux Kernel Developer at Qualcomm
Working as Linux Kernel Developer in Qualcomm in the core kernel team. Interests are in Embedded Systems and Firmware, System designs and Computer Architecture. View more