Documented in 1 files:
Defined in 1 files as a function:
Referenced in 9 files:
- drivers/dma-buf/dma-resv.c, line 396
- drivers/dma-buf/sw_sync.c, line 281
- drivers/gpu/drm/amd/amdgpu/amdgpu_fence.c, line 289
- drivers/gpu/drm/etnaviv/etnaviv_gpu.c, line 1308
- drivers/gpu/drm/i915/i915_request.h, line 409
- drivers/gpu/drm/i915/i915_vma_resource.c, line 341
- drivers/gpu/drm/msm/msm_drv.c, line 691
- drivers/gpu/drm/scheduler/sched_entity.c, line 232
- include/linux/dma-fence.h, line 362
Smatch caller information:
drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_process.c dma_fence_get_rcu_safe() -> dma_fence_get_rcu()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | fence | 1-u64max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | rcu_read | ||
| HALF_LOCKED2 | global &kfd_processes_mutex | ||
| HALF_LOCKED2 | global &kfd_processes_srcu |
drivers/gpu/drm/i915/gem/i915_gem_execbuffer.c dma_fence_get_rcu_safe() -> dma_fence_get_rcu()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | fence | 1-u64max |
| LOCK2 | rcu_read |
drivers/gpu/drm/i915/gt/intel_engine_heartbeat.c dma_fence_get_rcu_safe() -> dma_fence_get_rcu()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | fence | 1-u64max |
| LOCK2 | rcu_read |
drivers/gpu/drm/i915/i915_vma.c dma_fence_get_rcu_safe() -> dma_fence_get_rcu()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | fence | 1-u64max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | rcu_read | ||
| HALF_LOCKED2 | obj->base.resv |
drivers/gpu/drm/etnaviv/etnaviv_gpu.c etnaviv_gpu_wait_fence_interruptible() -> dma_fence_get_rcu()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | fence | 1-1025,1027-1029,1031-u64max |
| DATA_SOURCE | 0 | fence | r xa_load |
| LOCK2 | rcu_read |
drivers/gpu/drm/scheduler/sched_entity.c drm_sched_entity_kill_jobs_work() -> dma_fence_get_rcu()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | fence | 4096-ptr_max |
| HALF_LOCKED2 | &pool->lock |
drivers/gpu/drm/i915/gt/intel_context.c i915_request_get_rcu() -> dma_fence_get_rcu()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | fence | 4096-ptr_max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | &parent->guc_state.lock | ||
| LOCK2 | flags | ||
| TYPE_LOCK | (struct intel_context)->guc_state.lock |
drivers/gpu/drm/i915/gem/i915_gem_context.c i915_request_get_rcu() -> dma_fence_get_rcu()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | fence | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | rcu_read | ||
| HALF_LOCKED2 | &ctx->engines_mutex |
drivers/dma-buf/dma-fence-chain.c dma_fence_get_rcu_safe() -> dma_fence_get_rcu()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | fence | 1-u64max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | rcu_read | ||
| HALF_LOCKED2 | &pool->lock |
drivers/dma-buf/st-dma-fence.c dma_fence_get_rcu_safe() -> dma_fence_get_rcu()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | fence | 1-u64max |
| LOCK2 | rcu_read |
drivers/gpu/drm/amd/amdgpu/amdgpu_fence.c amdgpu_fence_wait_empty() -> dma_fence_get_rcu()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | fence | 1-u64max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | rcu_read | ||
| HALF_LOCKED2 | &adev->grbm_idx_mutex | ||
| HALF_LOCKED2 | &adev->reset_domain->sem | ||
| HALF_LOCKED2 | &attr->mutex |
drivers/gpu/drm/amd/amdgpu/amdgpu_fence.c dma_fence_get_rcu_safe() -> dma_fence_get_rcu()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | fence | 1-u64max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | rcu_read | ||
| HALF_LOCKED2 | &dqm->lock_hidden |
drivers/dma-buf/dma-resv.c dma_resv_iter_walk_unlocked() -> dma_fence_get_rcu()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | rcu_read | ||
| HALF_LOCKED2 | &m->lock | ||
| HALF_LOCKED2 | global &drm_unplug_srcu |
drivers/gpu/drm/i915/gt/intel_gt_requests.c dma_fence_get_rcu_safe() -> dma_fence_get_rcu()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | fence | 1-u64max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | &tl->mutex | ||
| LOCK2 | rcu_read | ||
| TYPE_LOCK | (struct intel_timeline)->mutex |
drivers/gpu/drm/msm/msm_drv.c wait_fence() -> dma_fence_get_rcu()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | fence | 1-u64max |
| DATA_SOURCE | 0 | fence | r idr_find |
| PREEMPT_ADD | <- disables preempt | ||
| LOCK2 | &queue->idr_lock | ||
| TYPE_LOCK | (struct msm_gpu_submitqueue)->idr_lock |
drivers/gpu/drm/i915/i915_active.c dma_fence_get_rcu_safe() -> dma_fence_get_rcu()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | fence | 1-u64max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | rcu_read |
drivers/gpu/drm/v3d/v3d_sched.c dma_fence_get_rcu_safe() -> dma_fence_get_rcu()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | fence | 1-u64max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | rcu_read | ||
| HALF_LOCKED2 | &adev->reset_domain->sem | ||
| HALF_LOCKED2 | &attr->mutex | ||
| HALF_LOCKED2 | &guc->submission_state.lock | ||
| HALF_LOCKED2 | &pool->lock | ||
| HALF_LOCKED2 | &sched->job_list_lock |
drivers/gpu/drm/i915/gt/intel_engine_cs.c i915_request_get_rcu() -> dma_fence_get_rcu()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | fence | 4096-ptr_max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | &engine->sched_engine->lock | ||
| LOCK2 | flags | ||
| HALF_LOCKED2 | &capture_mutex | ||
| TYPE_LOCK | (struct i915_sched_engine)->lock |
drivers/gpu/drm/xe/xe_sync.c dma_fence_get_rcu_safe() -> dma_fence_get_rcu()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | fence | 1-u64max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | rcu_read | ||
| HALF_LOCKED2 | &vm->lock |
drivers/gpu/drm/amd/amdgpu/amdgpu_userq.c dma_fence_get_rcu_safe() -> dma_fence_get_rcu()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | fence | 1-u64max |
| LOCK2 | rcu_read | ||
| HALF_LOCKED2 | &uq_mgr->userq_mutex |
drivers/gpu/drm/i915/gt/intel_timeline.c dma_fence_get_rcu_safe() -> dma_fence_get_rcu()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | fence | 1-u64max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | &m->lock | ||
| LOCK2 | &tl->mutex | ||
| LOCK2 | rcu_read | ||
| TYPE_LOCK | (struct intel_timeline)->mutex | ||
| TYPE_LOCK | (struct seq_file)->lock |
drivers/gpu/drm/i915/i915_vma_resource.c i915_vma_resource_bind_dep_sync_all() -> dma_fence_get_rcu()
| Type | Parameter | Key | Value |
|---|---|---|---|
| LOCK2 | &vm->mutex | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct i915_address_space)->mutex |
drivers/gpu/drm/i915/gt/intel_execlists_submission.c i915_request_get_rcu() -> dma_fence_get_rcu()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | fence | 4096-ptr_max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | &engine->sched_engine->lock | ||
| LOCK2 | irq | ||
| LOCK2 | rcu_read | ||
| HALF_LOCKED2 | bh | ||
| TYPE_LOCK | (struct i915_sched_engine)->lock |
drivers/dma-buf/sw_sync.c sync_pt_create() -> dma_fence_get_rcu()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | fence | 4096-ptr_max |
| PREEMPT_ADD | <- disables preempt | ||
| LOCK2 | &obj->lock | ||
| LOCK2 | irq | ||
| TYPE_LOCK | (struct sync_timeline)->lock |
drivers/gpu/drm/i915/gt/intel_lrc.c dma_fence_get_rcu_safe() -> dma_fence_get_rcu()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | fence | 1-u64max |
| LOCK2 | rcu_read |
drivers/gpu/drm/drm_syncobj.c dma_fence_get_rcu_safe() -> dma_fence_get_rcu()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | fence | 1-u64max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | rcu_read | ||
| HALF_LOCKED2 | &syncobj->lock |
drivers/gpu/drm/amd/amdgpu/amdgpu_eviction_fence.c dma_fence_get_rcu_safe() -> dma_fence_get_rcu()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | fence | 1-u64max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | rcu_read | ||
| HALF_LOCKED2 | &pool->lock | ||
| HALF_LOCKED2 | &uq_mgr->userq_mutex |
drivers/gpu/drm/i915/i915_request.c dma_fence_get_rcu_safe() -> dma_fence_get_rcu()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | fence | 1-u64max |
| LOCK2 | rcu_read |
drivers/gpu/drm/i915/i915_request.c i915_request_get_rcu() -> dma_fence_get_rcu()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | fence | 4096-ptr_max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | rcu_read | ||
| HALF_LOCKED2 | &rq->engine->uncore->lock |
drivers/accel/amdxdna/aie2_ctx.c dma_fence_get_rcu_safe() -> dma_fence_get_rcu()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | fence | 1-u64max |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | rcu_read | ||
| HALF_LOCKED2 | &hwctx->priv->job_sem | ||
| HALF_LOCKED2 | &xdna->client_lock | ||
| HALF_LOCKED2 | &xdna->dev_lock |
drivers/gpu/drm/i915/gt/intel_reset.c dma_fence_get_rcu_safe() -> dma_fence_get_rcu()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | fence | 1-u64max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | >->reset.mutex | ||
| LOCK2 | &timelines->lock | ||
| LOCK2 | rcu_read | ||
| TYPE_LOCK | (struct intel_gt_timelines)->lock | ||
| TYPE_LOCK | (struct intel_reset)->mutex |
drivers/gpu/drm/amd/amdgpu/amdgpu_device.c dma_fence_get_rcu_safe() -> dma_fence_get_rcu()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | fence | 1-u64max |
| LOCK2 | &pool->lock | ||
| LOCK2 | rcu_read | ||
| HALF_LOCKED2 | &adev->enforce_isolation_mutex |