|
My Project
|
#include <mali_kbase_defs.h>
Public Attributes | |
| struct list_head | ext_res_node |
| struct kbase_mem_phy_alloc * | alloc |
| u64 | gpu_addr |
struct kbase_ctx_ext_res_meta - Structure which binds an external resource to a . : List head for adding the metadata to a . : The physical memory allocation structure which is mapped. : The GPU virtual address the resource is mapped to.
External resources can be mapped into multiple contexts as well as the same context multiple times. As kbase_va_region itself isn't refcounted we can't attach our extra information to it as it could be removed under our feet leaving external resources pinned. This metadata structure binds a single external resource to a single context, ensuring that per context mapping is tracked separately so it can be overridden when needed and abuses by the application (freeing the resource multiple times) don't effect the refcount of the physical allocation.
1.8.13