Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c amdgpu_amdkfd_gpuvm_export_dmabuf() -> kfd_mem_export_dmabuf()

Type Parameter Key Value
PARAM_VALUE 0 mem 1-u64max
PARAM_VALUE 0 mem->bo->notifier.mm->mmap_lock.first_waiter->handoff_set 0-1
PARAM_VALUE 0 mem->bo->notifier.mm->mmap_lock.first_waiter->type 0-1
PARAM_VALUE 0 mem->bo->tbo.base._resv.lock.ww_class->is_wait_die 0-1
PARAM_VALUE 0 mem->bo->tbo.base.resv->lock.ww_class->is_wait_die 0-1
PARAM_VALUE 0 mem->bo->tbo.bdev->dev_mapping->i_mmap_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 mem->bo->tbo.bdev->dev_mapping->i_mmap_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 mem->lock.dep_map->name 0-255
PARAM_VALUE 0 mem->lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 mem->lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 mem->lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 mem->lock.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 mem->lock.wait_lock.owner (-1)
PARAM_VALUE 0 mem->lock.wait_lock.owner_cpu u32max
CAPPED_DATA 0 &mem->lock 1
DATA_SOURCE 0 mem $0
USER_DATA 0 mem->alloc_flags 0-u32max[u]
USER_DATA 0 mem->bo->notifier.interval_tree.__subtree_last 0-u64max[c]
USER_DATA 0 mem->va 0-u64max[u]
LOCK2 &p->mutex
LOCK2 0 &mem->lock
TYPE_LOCK (struct kfd_process)->mutex
TYPE_LOCK (struct kgd_mem)->lock

drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c kfd_mem_attach_dmabuf() -> kfd_mem_export_dmabuf()

Type Parameter Key Value
PARAM_VALUE 0 mem 4096-ptr_max
PARAM_VALUE 0 mem->bo 4096-ptr_max
PARAM_VALUE 0 mem->bo->notifier.mm->mmap_lock.first_waiter->handoff_set 0-1
PARAM_VALUE 0 mem->bo->notifier.mm->mmap_lock.first_waiter->type 0-1
PARAM_VALUE 0 mem->bo->tbo.base.resv->lock.ww_class->is_wait_die 0-1
PARAM_VALUE 0 mem->bo->tbo.bdev->dev_mapping->i_mmap_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 mem->bo->tbo.bdev->dev_mapping->i_mmap_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 mem->bo->tbo.bdev->pool.dev->iommu->attach_deferred 0-1
PARAM_VALUE 0 mem->bo->tbo.bdev->pool.dev->iommu->pci_32bit_workaround 0-1
PARAM_VALUE 0 mem->bo->tbo.type 0-1,3-u32max
PARAM_VALUE 0 mem->domain 2,4
PARAM_VALUE 0 mem->lock.dep_map->name 0-255
PARAM_VALUE 0 mem->lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 mem->lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 mem->lock.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 mem->lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 mem->lock.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 mem->lock.wait_lock.owner (-1)
PARAM_VALUE 0 mem->lock.wait_lock.owner_cpu u32max
PARAM_VALUE 0 mem->process_info->lock.dep_map->name 0-255
PARAM_VALUE 0 mem->process_info->lock.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 mem->process_info->lock.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 mem->process_info->lock.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 mem->process_info->lock.osq.tail.counter 0-s32max
PARAM_VALUE 0 mem->process_info->lock.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 mem->process_info->lock.wait_lock.owner (-1)
PARAM_VALUE 0 mem->process_info->lock.wait_lock.owner_cpu u32max
PARAM_VALUE 0 mem->va 1-u64max
DATA_SOURCE 0 mem $1
FUZZY_MAX 0 mem->domain 2
BIT_INFO 0 mem->domain 0x0,0x6
USER_DATA 0 mem->alloc_flags 0-u32max[u]
USER_DATA 0 mem->bo->notifier.interval_tree.__subtree_last 0-u64max[c]
USER_DATA 0 mem->bo->tbo.ttm->num_pages 0-u32max[c]
USER_DATA 0 mem->dmabuf->size 0-u64max
USER_DATA 0 mem->va 1-u64max[u]
LOCK2 &p->mutex
LOCK2 0 &mem->lock
LOCK2 0 &mem->process_info->lock
HALF_LOCKED2 &gobj->dev->object_name_lock
TYPE_LOCK (struct amdkfd_process_info)->lock
TYPE_LOCK (struct kfd_process)->mutex
TYPE_LOCK (struct kgd_mem)->lock