Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 2 files:

Smatch caller information:

drivers/gpu/drm/amd/amdgpu/amdgpu_userq.c amdgpu_userq_create() -> amdgpu_userq_put()

Type Parameter Key Value
PARAM_VALUE 0 queue 4096-ptr_max
PARAM_VALUE 0 queue->doorbell_handle 0
PARAM_VALUE 0 queue->doorbell_index 0-u32max
PARAM_VALUE 0 queue->doorbell_offset 0
PARAM_VALUE 0 queue->fence_drv 4096-ptr_max
PARAM_VALUE 0 queue->fence_drv->adev s64min-(-4096),4096-s64max
PARAM_VALUE 0 queue->fence_drv->refcount.refcount.refs.counter 1
PARAM_VALUE 0 queue->fence_drv->va s64max
PARAM_VALUE 0 queue->fence_drv_lock.dep_map->name 0-255
PARAM_VALUE 0 queue->fence_drv_lock.first_waiter 0
PARAM_VALUE 0 queue->fence_drv_lock.magic 4096-ptr_max
PARAM_VALUE 0 queue->fence_drv_lock.osq.tail.counter 0
PARAM_VALUE 0 queue->fence_drv_lock.owner.counter 0
PARAM_VALUE 0 queue->fence_drv_xa.xa_flags 33554436
PARAM_VALUE 0 queue->fence_drv_xa.xa_head 0
PARAM_VALUE 0 queue->priority 0-2
PARAM_VALUE 0 queue->queue_type 0-2
PARAM_VALUE 0 queue->refcount.refcount.refs.counter 1
PARAM_VALUE 0 queue->userq_mgr 4096-ptr_max
PARAM_VALUE 0 queue->userq_mgr->adev 4096-ptr_max
PARAM_VALUE 0 queue->userq_mgr->adev->gfx.rlc.cs_data->section->reg_index 0,4,40960,41022,41164,41174,41176,41179,41461,41471-41472,41530,41630,41632-41633,41635,41637,41694,41717,62460,65472
PARAM_VALUE 0 queue->userq_mgr->adev->mman.bdev.dev_mapping->host->i_sb->s_export_op->get_parent 0,8931,264940071972966400,291591359766798336,565128213429456896,893189740598853632,1241177127089143808,1474696885321834496,1812477326828269568,1893665921928286208,2210088671756947456,2437012291923775488,2483979068402987008-s64max
PARAM_VALUE 0 queue->userq_mgr->adev->mman.bdev.dev_mapping->i_mmap_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 queue->userq_mgr->adev->reset_domain->sem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 queue->userq_mgr->adev->reset_domain->sem.first_waiter->type 0-1
PARAM_VALUE 0 queue->userq_vas.va.queue_rb 0-35184372088831
PARAM_VALUE 0 queue->userq_vas.va.rptr 0-35184372088831
PARAM_VALUE 0 queue->userq_vas.va.wptr 0-35184372088831
PARAM_VALUE 0 queue->vm 4096-ptr_max
PARAM_VALUE 0 queue->vm->root.bo 4096-ptr_max
PARAM_VALUE 0 queue->vm->va.rb_root.rb_node 1-u64max
PARAM_VALUE 0 queue->xcp_id 0-4294967294
BUF_SIZE 0 queue 680
BUF_SIZE 0 queue->userq_mgr 760
BUF_SIZE 0 queue->vm 3584
CAPPED_DATA 0 queue 1
DATA_SOURCE 0 queue r _kzalloc_noprof
FUZZY_MAX 0 queue->xcp_id 0
NOCHECK_CALL
HOST_DATA 0 queue->mqd.cpu_ptr->sdmax_rlcx_ib_cntl 0-4294967295
HOST_DATA 0 queue->mqd.cpu_ptr->sdmax_rlcx_rb_wptr_poll_cntl 0-4294967295
USER_DATA 0 queue->doorbell_handle 0[u]
USER_DATA 0 queue->doorbell_offset 0[u]
USER_DATA 0 queue->mqd.cpu_ptr->cp_gfx_hqd_base 0-4294967295
USER_DATA 0 queue->mqd.cpu_ptr->cp_gfx_hqd_base_hi 0-16777215[c]
USER_DATA 0 queue->mqd.cpu_ptr->cp_gfx_hqd_rptr_addr 0,4-4294967292[c]
USER_DATA 0 queue->mqd.cpu_ptr->cp_gfx_hqd_rptr_addr_hi 0-u16max[c]
USER_DATA 0 queue->mqd.cpu_ptr->cp_hqd_eop_base_addr_hi 0-16777215[c]
USER_DATA 0 queue->mqd.cpu_ptr->cp_hqd_eop_base_addr_lo 0-4294967295
USER_DATA 0 queue->mqd.cpu_ptr->cp_hqd_pq_base_hi 0-16777215[c]
USER_DATA 0 queue->mqd.cpu_ptr->cp_hqd_pq_base_lo 0-4294967295
USER_DATA 0 queue->mqd.cpu_ptr->cp_hqd_pq_rptr_report_addr_hi 0-u16max[c]
USER_DATA 0 queue->mqd.cpu_ptr->cp_hqd_pq_rptr_report_addr_lo 0,4-4294967292[c]
USER_DATA 0 queue->mqd.cpu_ptr->cp_hqd_pq_wptr_poll_addr_hi 0-u16max[c]
USER_DATA 0 queue->mqd.cpu_ptr->cp_hqd_pq_wptr_poll_addr_lo 0,4-4294967292[c]
USER_DATA 0 queue->mqd.cpu_ptr->cp_rb_wptr_poll_addr_hi 0-u16max[c]
USER_DATA 0 queue->mqd.cpu_ptr->cp_rb_wptr_poll_addr_lo 0,4-4294967292[c]
USER_DATA 0 queue->mqd.cpu_ptr->fw_work_area_base_hi 0-4294967295[c]
USER_DATA 0 queue->mqd.cpu_ptr->fw_work_area_base_lo 0-4294967295[c]
USER_DATA 0 queue->mqd.cpu_ptr->sdmax_rlcx_csa_addr_hi 0-4294967295[c]
USER_DATA 0 queue->mqd.cpu_ptr->sdmax_rlcx_csa_addr_lo 0-4294967295[c]
USER_DATA 0 queue->mqd.cpu_ptr->sdmax_rlcx_rb_base 0-4294967295[c]
USER_DATA 0 queue->mqd.cpu_ptr->sdmax_rlcx_rb_base_hi 0-16777215[c]
USER_DATA 0 queue->mqd.cpu_ptr->sdmax_rlcx_rb_rptr_addr_hi 0-4294967295[c]
USER_DATA 0 queue->mqd.cpu_ptr->sdmax_rlcx_rb_rptr_addr_lo 0-4294967295[c]
USER_DATA 0 queue->mqd.cpu_ptr->sdmax_rlcx_rb_wptr_poll_addr_hi 0-4294967295[c]
USER_DATA 0 queue->mqd.cpu_ptr->sdmax_rlcx_rb_wptr_poll_addr_lo 0-4294967295[c]
USER_DATA 0 queue->mqd.cpu_ptr->shadow_base_hi 0-4294967295[c]
USER_DATA 0 queue->mqd.cpu_ptr->shadow_base_lo 0-4294967295[c]
USER_DATA 0 queue->priority 1-2[c]
USER_DATA 0 queue->queue_type 0-2[u]
USER_DATA 0 queue->userq_prop->csa_addr 0-u64max
USER_DATA 0 queue->userq_prop->eop_gpu_addr 0-u64max
USER_DATA 0 queue->userq_prop->hqd_base_gpu_addr 0-9223372036854775806,9223372036854775808-u64max[u]
USER_DATA 0 queue->userq_prop->queue_size 0-u32max[u]
USER_DATA 0 queue->userq_prop->rptr_gpu_addr 0-u64max[u]
USER_DATA 0 queue->userq_prop->shadow_addr 0-u64max
USER_DATA 0 queue->userq_prop->tmz_queue 0-1[c]
USER_DATA 0 queue->userq_prop->wptr_gpu_addr 0-u64max[u]
USER_DATA 0 queue->userq_vas.va.csa 0-35184372088831[c]
USER_DATA 0 queue->userq_vas.va.eop 0-35184372088831[c]
USER_DATA 0 queue->userq_vas.va.queue_rb 0-35184372088831[c]
USER_DATA 0 queue->userq_vas.va.rptr 0-35184372088831[c]
USER_DATA 0 queue->userq_vas.va.shadow 0-35184372088831[c]
USER_DATA 0 queue->userq_vas.va.wptr 0-35184372088831[c]

drivers/gpu/drm/amd/amdgpu/amdgpu_userq.c amdgpu_userq_ioctl() -> amdgpu_userq_put()

Type Parameter Key Value
PARAM_VALUE 0 queue 1-u64max
DATA_SOURCE 0 queue r __xa_erase
NOCHECK_CALL

drivers/gpu/drm/amd/amdgpu/amdgpu_userq.c amdgpu_userq_mgr_fini() -> amdgpu_userq_put()

Type Parameter Key Value
PARAM_VALUE 0 queue 1-1025,1027-1029,1031-u64max
DATA_SOURCE 0 queue r xa_find
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 global &drm_unplug_srcu

drivers/gpu/drm/amd/amdgpu/amdgpu_userq_fence.c amdgpu_userq_signal_ioctl() -> amdgpu_userq_put()

Type Parameter Key Value
PARAM_VALUE 0 queue 4096-ptr_max
PARAM_VALUE 0 queue->fence_drv->fence_list_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 queue->fence_drv->fences.prev 4096-ptr_max
PARAM_VALUE 0 queue->fence_drv->fences.prev->next 4096-ptr_max
PARAM_VALUE 0 queue->fence_drv->fences.prev->next->next 4096-ptr_max
PARAM_VALUE 0 queue->hang_detect_work.timer.entry->pprev 4096-ptr_max
PARAM_VALUE 0 queue->last_fence 4096-ptr_max
PARAM_VALUE 0 queue->userq_prop 4096-ptr_max
PARAM_VALUE 0 queue->vm 4096-ptr_max
PARAM_VALUE 0 queue->vm->root.bo->tbo.base.resv->fences 4096-ptr_max
PARAM_VALUE 0 queue->vm->root.bo->tbo.base.resv->lock.base.dep_map->name 0-255
PARAM_VALUE 0 queue->vm->root.bo->tbo.base.resv->lock.base.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 queue->vm->root.bo->tbo.base.resv->lock.base.first_waiter->list.prev->prev 5159360019465732096
PARAM_VALUE 0 queue->vm->root.bo->tbo.base.resv->lock.base.first_waiter->task->blocked_lock.owner (-1)
PARAM_VALUE 0 queue->vm->root.bo->tbo.base.resv->lock.base.osq.tail.counter 0-s32max
DATA_SOURCE 0 queue r amdgpu_userq_get
NOCHECK_CALL

drivers/gpu/drm/amd/amdgpu/amdgpu_userq_fence.c amdgpu_userq_wait_return_fence_info() -> amdgpu_userq_put()

Type Parameter Key Value
PARAM_VALUE 0 queue 4096-ptr_max
DATA_SOURCE 0 queue r amdgpu_userq_get
NOCHECK_CALL