Documented in 1 files:

Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 7 files:

Smatch caller information:

drivers/gpu/drm/amd/amdgpu/amdgpu_object.c amdgpu_bo_pin() -> dma_buf_pin()

Type Parameter Key Value
PARAM_VALUE 0 attach 1-u64max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &crtc->mutex
HALF_LOCKED2 &mem->process_info->lock
HALF_LOCKED2 &p->mutex
HALF_LOCKED2 &plane->mutex
HALF_LOCKED2 *bo->tbo.base.resv
HALF_LOCKED2 *bo_ptr->tbo.base.resv
HALF_LOCKED2 bo->tbo.base.resv

drivers/gpu/drm/virtio/virtgpu_prime.c virtgpu_dma_buf_init_obj() -> dma_buf_pin()

Type Parameter Key Value
PARAM_VALUE 0 attach 4096-ptr_max
PARAM_VALUE 0 attach->dev 1-u64max
PARAM_VALUE 0 attach->dmabuf 4096-ptr_max
PARAM_VALUE 0 attach->dmabuf->resv->lock.base.dep_map->name 0-255
PARAM_VALUE 0 attach->dmabuf->resv->lock.base.first_waiter 0,4096-5159360019465732095,5159360019465732097-ptr_max
PARAM_VALUE 0 attach->dmabuf->resv->lock.base.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 attach->dmabuf->resv->lock.base.osq.tail.counter 0-s32max
PARAM_VALUE 0 attach->importer_ops 8418988896761581568
PARAM_VALUE 0 attach->importer_priv 4096-ptr_max
PARAM_VALUE 0 attach->node.next 4096-ptr_max
PARAM_VALUE 0 attach->node.prev 4096-ptr_max
BUF_SIZE 0 attach 64
BUF_SIZE 0 attach->dmabuf s32min-(-2),1-s32max
BUF_SIZE 0 attach->importer_ops 16
BUF_SIZE 0 attach->importer_priv 704
DATA_SOURCE 0 attach $2
LOCK2 &dev->object_name_lock
LOCK2 &file_priv->prime.lock
LOCK2 resv
HALF_LOCKED2 &p->mutex
TYPE_LOCK (struct drm_device)->object_name_lock
TYPE_LOCK (struct drm_prime_file_private)->lock

drivers/iommu/iommufd/pages.c iopt_map_dmabuf() -> dma_buf_pin()

Type Parameter Key Value
PARAM_VALUE 0 attach 4096-ptr_max
PARAM_VALUE 0 attach->dev 1-u64max
PARAM_VALUE 0 attach->dmabuf 4096-ptr_max
PARAM_VALUE 0 attach->importer_ops 2379210461376409600
PARAM_VALUE 0 attach->importer_priv 4096-ptr_max
PARAM_VALUE 0 attach->node.next 4096-ptr_max
PARAM_VALUE 0 attach->node.prev 4096-ptr_max
BUF_SIZE 0 attach 64
BUF_SIZE 0 attach->dmabuf s32min-(-2),1-s32max
BUF_SIZE 0 attach->importer_ops 16
BUF_SIZE 0 attach->importer_priv 392
DATA_SOURCE 0 attach r dma_buf_dynamic_attach
LOCK2 dmabuf->resv

drivers/gpu/drm/virtio/virtgpu_plane.c virtio_gpu_prepare_imported_obj() -> dma_buf_pin()

Type Parameter Key Value
PARAM_VALUE 0 attach 4096-ptr_max
PARAM_VALUE 0 attach->dmabuf 4096-ptr_max
PARAM_VALUE 0 attach->dmabuf->resv->lock.base.dep_map->name 0-255
PARAM_VALUE 0 attach->dmabuf->resv->lock.base.first_waiter 0,4096-5159360019465732095,5159360019465732097-ptr_max
PARAM_VALUE 0 attach->dmabuf->resv->lock.base.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 attach->dmabuf->resv->lock.base.osq.tail.counter 0-s32max
RX_PATH
TASK_NOT_RUNNING
LOCK2 resv

drivers/gpu/drm/xe/xe_dma_buf.c check_residency() -> dma_buf_pin()

Type Parameter Key Value
PARAM_VALUE 0 attach 4096-ptr_max
LOCK2 imported->ttm.base.resv

drivers/infiniband/core/umem_dmabuf.c ib_umem_dmabuf_get_pinned_and_lock() -> dma_buf_pin()

Type Parameter Key Value
PARAM_VALUE 0 attach 4096-ptr_max
PARAM_VALUE 0 attach->dev 1-u64max
PARAM_VALUE 0 attach->dmabuf 4096-ptr_max
PARAM_VALUE 0 attach->dmabuf->resv->lock.base.dep_map->name 0-255
PARAM_VALUE 0 attach->dmabuf->resv->lock.base.first_waiter 0,4096-5159360019465732095,5159360019465732097-ptr_max
PARAM_VALUE 0 attach->dmabuf->resv->lock.base.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 attach->dmabuf->resv->lock.base.osq.tail.counter 0-s32max
PARAM_VALUE 0 attach->importer_ops 4064490296843874304,7656496132324372480
PARAM_VALUE 0 attach->importer_priv 4096-ptr_max
PARAM_VALUE 0 attach->node.next 4096-ptr_max
PARAM_VALUE 0 attach->node.prev 4096-ptr_max
BUF_SIZE 0 attach->importer_ops (-1),16
RX_PATH
TASK_NOT_RUNNING
LOCK2 0 attach->dmabuf->resv