struct_dma_buf(9) shared buffer object

SYNOPSIS


struct dma_buf {
size_t size;
struct file * file;
struct list_head attachments;
const struct dma_buf_ops * ops;
struct mutex lock;
unsigned vmapping_counter;
void * vmap_ptr;
const char * exp_name;
struct module * owner;
struct list_head list_node;
void * priv;
struct reservation_object * resv;
wait_queue_head_t poll;
struct dma_buf_poll_cb_t cb_excl;
struct dma_buf_poll_cb_t cb_shared;
};

MEMBERS

size

size of the buffer

file

file pointer used for sharing buffers across, and for refcounting.

attachments

list of dma_buf_attachment that denotes all devices attached.

ops

dma_buf_ops associated with this buffer object.

lock

used internally to serialize list manipulation, attach/detach and vmap/unmap

vmapping_counter

used internally to refcnt the vmaps

vmap_ptr

the current vmap ptr if vmapping_counter > 0

exp_name

name of the exporter; useful for debugging.

owner

pointer to exporter module; used for refcounting when exporter is a kernel module.

list_node

node for dma_buf accounting and debugging.

priv

exporter specific private data for this buffer object.

resv

reservation object linked to this dma-buf

poll

for userspace poll support

cb_excl

for userspace poll support

cb_shared

for userspace poll support

COPYRIGHT