Documented in 1 files:

Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 20 files:

Smatch caller information:

drivers/media/platform/nvidia/tegra-vde/dmabuf-cache.c tegra_vde_dmabuf_cache_map() -> dma_buf_attach()

Type Parameter Key Value
DATA_SOURCE 0 dmabuf $1
RX_PATH
TASK_NOT_RUNNING
LOCK2 &vde->map_lock
TYPE_LOCK (struct tegra_vde)->map_lock

drivers/gpu/drm/tegra/gem.c tegra_bo_import() -> dma_buf_attach()

Type Parameter Key Value
PARAM_VALUE 0 dmabuf 4096-ptr_max
BUF_SIZE 0 dmabuf s32min-(-2),1-s32max
BUF_SIZE 0 dmabuf s32min-(-2),1-s32max
CAPPED_DATA 0 dmabuf 1
DATA_SOURCE 0 dmabuf $1
UNITS 1 dev unit_byte
LOCK2 &drm->object_name_lock
LOCK2 &file_priv->prime.lock
HALF_LOCKED2 &p->mutex
TYPE_LOCK (struct drm_device)->object_name_lock
TYPE_LOCK (struct drm_prime_file_private)->lock

drivers/gpu/drm/tegra/gem.c tegra_bo_pin() -> dma_buf_attach()

Type Parameter Key Value
PARAM_VALUE 0 dmabuf 1-u64max
BUF_SIZE 1 dev (-1),1616
BUF_SIZE 1 dev (-1),1616
DATA_SOURCE 1 dev $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &cache->lock
HALF_LOCKED2 &fpriv->lock

drivers/iio/industrialio-buffer.c iio_buffer_attach_dmabuf() -> dma_buf_attach()

Type Parameter Key Value
PARAM_VALUE 0 dmabuf 0-ptr_max
BUF_SIZE 0 dmabuf s32min-(-2),1-s32max
BUF_SIZE 0 dmabuf s32min-(-2),1-s32max
DATA_SOURCE 0 dmabuf r dma_buf_get
UNITS 1 dev unit_byte

net/core/devmem.c net_devmem_bind_dmabuf() -> dma_buf_attach()

Type Parameter Key Value
PARAM_VALUE 0 dmabuf 0-ptr_max
PARAM_VALUE 1 dev 4096-ptr_max
BUF_SIZE 0 dmabuf s32min-(-2),1-s32max
BUF_SIZE 0 dmabuf s32min-(-2),1-s32max
DATA_SOURCE 1 dev $2
RX_PATH
TASK_NOT_RUNNING
LOCK2 &dev->lock
LOCK2 &priv->lock
HALF_LOCKED2 &devlink->lock
HALF_LOCKED2 &net->xfrm.xfrm_cfg_mutex
HALF_LOCKED2 global &audit_cmd_mutex.lock
HALF_LOCKED2 global &cb_lock
HALF_LOCKED2 global &crypto_cfg_mutex
HALF_LOCKED2 global &dpll_lock
HALF_LOCKED2 global &hwsim_phys_lock
HALF_LOCKED2 global &net_dm_mutex
HALF_LOCKED2 global &rtnl_mutex
HALF_LOCKED2 global &rx_queue_mutex
HALF_LOCKED2 rcu_read
TYPE_LOCK (struct netdev_nl_sock)->lock

drivers/accel/amdxdna/amdxdna_gem.c amdxdna_gem_prime_import() -> dma_buf_attach()

Type Parameter Key Value
PARAM_VALUE 0 dmabuf 4096-ptr_max
PARAM_VALUE 0 dmabuf->file 4096-ptr_max
PARAM_VALUE 0 dmabuf->resv->lock.ww_class->is_wait_die 0-s32max
BUF_SIZE 0 dmabuf s32min-(-2),1-s32max
BUF_SIZE 0 dmabuf s32min-(-2),1-s32max
CAPPED_DATA 0 dmabuf 1
DATA_SOURCE 0 dmabuf $1
NOSPEC 0 dmabuf->size
USER_DATA 0 dmabuf->file->f_mode 33554432,34078720-571342855[c]
USER_DATA 0 dmabuf->size 4096-u64max[c]
NO_OVERFLOW_SIMPLE 0 dmabuf->size
UNITS 1 dev unit_byte
HALF_LOCKED2 &dev->object_name_lock
HALF_LOCKED2 &file_priv->prime.lock

drivers/misc/fastrpc.c fastrpc_map_attach() -> dma_buf_attach()

Type Parameter Key Value
PARAM_VALUE 0 dmabuf 0-ptr_max
BUF_SIZE 0 dmabuf s32min-(-2),1-s32max
BUF_SIZE 0 dmabuf s32min-(-2),1-s32max
DATA_SOURCE 0 dmabuf r dma_buf_get
RX_PATH
TASK_NOT_RUNNING

drivers/gpu/drm/i915/gem/i915_gem_dmabuf.c i915_gem_prime_import() -> dma_buf_attach()

Type Parameter Key Value
PARAM_VALUE 0 dmabuf 4096-ptr_max
PARAM_VALUE 0 dmabuf->resv->lock.ww_class->is_wait_die 0-s32max
BUF_SIZE 0 dmabuf s32min-(-2),1-s32max
BUF_SIZE 0 dmabuf s32min-(-2),1-s32max
CAPPED_DATA 0 dmabuf 1
DATA_SOURCE 0 dmabuf $1
NO_OVERFLOW_SIMPLE 0 dmabuf->size
UNITS 1 dev unit_byte
HALF_LOCKED2 &dev->object_name_lock
HALF_LOCKED2 &file_priv->prime.lock

drivers/gpu/drm/i915/gem/i915_gem_dmabuf.c igt_dmabuf_import_same_driver() -> dma_buf_attach()

Type Parameter Key Value
PARAM_VALUE 0 dmabuf 4096-ptr_max
PARAM_VALUE 0 dmabuf->resv->lock.ww_class->is_wait_die 0-1
BUF_SIZE 0 dmabuf 361,536
BUF_SIZE 0 dmabuf 361,536
DATA_SOURCE 0 dmabuf r i915_gem_prime_export
NO_OVERFLOW_SIMPLE 0 dmabuf->size
UNITS 1 dev unit_byte

drivers/accel/ivpu/ivpu_gem.c ivpu_gem_prime_import() -> dma_buf_attach()

Type Parameter Key Value
PARAM_VALUE 0 dmabuf 0-ptr_max
PARAM_VALUE 0 dmabuf->resv->lock.ww_class->is_wait_die 0-s32max
BUF_SIZE 0 dmabuf s32min-(-2),1-s32max
BUF_SIZE 0 dmabuf s32min-(-2),1-s32max
CAPPED_DATA 0 dmabuf 1
DATA_SOURCE 0 dmabuf $1
USER_DATA 0 dmabuf->file->f_mode 33554432,34078720-571342855[c]
USER_DATA 0 dmabuf->size 1-u64max
UNITS 1 dev unit_byte
HALF_LOCKED2 &dev->object_name_lock
HALF_LOCKED2 &file_priv->prime.lock

io_uring/zcrx.c io_import_dmabuf() -> dma_buf_attach()

Type Parameter Key Value
PARAM_VALUE 0 dmabuf 0-ptr_max
PARAM_VALUE 1 dev 1-u64max
BUF_SIZE 0 dmabuf s32min-(-2),1-s32max
BUF_SIZE 0 dmabuf s32min-(-2),1-s32max
DATA_SOURCE 0 dmabuf r dma_buf_get
CAPABLE 0 12
LOCK2 &ctx->uring_lock
LOCK2 _T->lock
HALF_LOCKED2 &dev->lock
TYPE_LOCK (struct io_ring_ctx)->uring_lock

drivers/gpu/drm/omapdrm/omap_gem_dmabuf.c omap_gem_prime_import() -> dma_buf_attach()

Type Parameter Key Value
PARAM_VALUE 0 dmabuf 4096-ptr_max
BUF_SIZE 0 dmabuf s32min-(-2),1-s32max
BUF_SIZE 0 dmabuf s32min-(-2),1-s32max
CAPPED_DATA 0 dmabuf 1
DATA_SOURCE 0 dmabuf $1
UNITS 1 dev unit_byte
LOCK2 &dev->object_name_lock
LOCK2 &file_priv->prime.lock
HALF_LOCKED2 &p->mutex
TYPE_LOCK (struct drm_device)->object_name_lock
TYPE_LOCK (struct drm_prime_file_private)->lock

drivers/media/common/videobuf2/videobuf2-dma-sg.c vb2_dma_sg_attach_dmabuf() -> dma_buf_attach()

Type Parameter Key Value
PARAM_VALUE 0 dmabuf 4096-ptr_max
PARAM_VALUE 1 dev 1-u64max
DATA_SOURCE 0 dmabuf $2
DATA_SOURCE 1 dev $1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &mdev->req_queue_mutex
HALF_LOCKED2 vb->vb2_queue->lock

drivers/gpu/drm/drm_prime.c drm_gem_prime_import_dev() -> dma_buf_attach()

Type Parameter Key Value
PARAM_VALUE 0 dmabuf 4096-ptr_max
BUF_SIZE 0 dmabuf s32min-(-2),1-s32max
BUF_SIZE 0 dmabuf s32min-(-2),1-s32max
CAPPED_DATA 0 dmabuf 1
DATA_SOURCE 0 dmabuf $1
DATA_SOURCE 1 dev $2
LOCK2 &dev->object_name_lock
LOCK2 &file_priv->prime.lock
HALF_LOCKED2 &p->mutex
TYPE_LOCK (struct drm_device)->object_name_lock
TYPE_LOCK (struct drm_prime_file_private)->lock

drivers/media/common/videobuf2/videobuf2-dma-contig.c vb2_dc_attach_dmabuf() -> dma_buf_attach()

Type Parameter Key Value
PARAM_VALUE 0 dmabuf 4096-ptr_max
PARAM_VALUE 1 dev 1-u64max
DATA_SOURCE 0 dmabuf $2
DATA_SOURCE 1 dev $1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &mdev->req_queue_mutex
HALF_LOCKED2 vb->vb2_queue->lock

drivers/usb/gadget/function/f_fs.c ffs_dmabuf_attach() -> dma_buf_attach()

Type Parameter Key Value
PARAM_VALUE 0 dmabuf 0-ptr_max
BUF_SIZE 0 dmabuf s32min-(-2),1-s32max
BUF_SIZE 0 dmabuf s32min-(-2),1-s32max
DATA_SOURCE 0 dmabuf r dma_buf_get
UNITS 1 dev unit_byte

drivers/accel/qaic/qaic_data.c qaic_gem_prime_import() -> dma_buf_attach()

Type Parameter Key Value
PARAM_VALUE 0 dmabuf 4096-ptr_max
PARAM_VALUE 0 dmabuf->file 4096-ptr_max
BUF_SIZE 0 dmabuf s32min-(-2),1-s32max
BUF_SIZE 0 dmabuf s32min-(-2),1-s32max
CAPPED_DATA 0 dmabuf 1
DATA_SOURCE 0 dmabuf $1
UNITS 1 dev unit_byte
LOCK2 &dev->object_name_lock
LOCK2 &file_priv->prime.lock
HALF_LOCKED2 &p->mutex
TYPE_LOCK (struct drm_device)->object_name_lock
TYPE_LOCK (struct drm_prime_file_private)->lock

drivers/gpu/drm/drm_gem_shmem_helper.c drm_gem_shmem_prime_import_no_map() -> dma_buf_attach()

Type Parameter Key Value
PARAM_VALUE 0 dmabuf 4096-ptr_max
BUF_SIZE 0 dmabuf s32min-(-2),1-s32max
BUF_SIZE 0 dmabuf s32min-(-2),1-s32max
CAPPED_DATA 0 dmabuf 1
DATA_SOURCE 0 dmabuf $1
UNITS 1 dev unit_byte
LOCK2 &dev->object_name_lock
LOCK2 &file_priv->prime.lock
HALF_LOCKED2 &p->mutex
TYPE_LOCK (struct drm_device)->object_name_lock
TYPE_LOCK (struct drm_prime_file_private)->lock

drivers/xen/gntdev-dmabuf.c dmabuf_imp_to_refs() -> dma_buf_attach()

Type Parameter Key Value
PARAM_VALUE 0 dmabuf 0-ptr_max
BUF_SIZE 0 dmabuf s32min-(-2),1-s32max
BUF_SIZE 0 dmabuf s32min-(-2),1-s32max
DATA_SOURCE 0 dmabuf r dma_buf_get
DATA_SOURCE 1 dev $1