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