Documented in 1 files:

Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 12 files:

Smatch caller information:

drivers/gpu/drm/xe/xe_tlb_inval_job.c xe_vm_put() -> drm_gpuvm_put()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/gpu/drm/msm/dsi/dsi_host.c msm_dsi_tx_buf_free() -> drm_gpuvm_put()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/gpu/drm/msm/msm_submitqueue.c __msm_context_destroy() -> drm_gpuvm_put()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/gpu/drm/xe/xe_vm_madvise.c xe_vm_put() -> drm_gpuvm_put()

Type Parameter Key Value
PARAM_VALUE 0 gpuvm 4096-ptr_max
NOCHECK_CALL
HALF_LOCKED2 &vm->svm.gpusvm.notifier_lock

drivers/gpu/drm/msm/disp/mdp4/mdp4_kms.c mdp4_destroy() -> drm_gpuvm_put()

Type Parameter Key Value
PARAM_VALUE 0 gpuvm 1-u64max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 global &component_mutex

drivers/gpu/drm/msm/disp/mdp5/mdp5_kms.c mdp5_kms_destroy() -> drm_gpuvm_put()

Type Parameter Key Value
PARAM_VALUE 0 gpuvm 1-u64max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 global &component_mutex

drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c _dpu_kms_mmu_destroy() -> drm_gpuvm_put()

Type Parameter Key Value
PARAM_VALUE 0 gpuvm 1-u64max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 global &component_mutex

drivers/gpu/drm/xe/xe_pagefault.c xe_vm_put() -> drm_gpuvm_put()

Type Parameter Key Value
PARAM_VALUE 0 gpuvm 4096-ptr_max
NOCHECK_CALL
HALF_LOCKED2 &pool->lock

drivers/gpu/drm/nouveau/nouveau_uvmm.c nouveau_uvmm_fini() -> drm_gpuvm_put()

Type Parameter Key Value
PARAM_VALUE 0 gpuvm 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &cli->mutex
HALF_LOCKED2 &drm->clients_lock
HALF_LOCKED2 global &drm_unplug_srcu
TYPE_LOCK (struct nouveau_cli)->mutex

drivers/gpu/drm/nouveau/nouveau_uvmm.c nouveau_uvmm_ioctl_vm_init() -> drm_gpuvm_put()

Type Parameter Key Value
PARAM_VALUE 0 gpuvm 4096-ptr_max
PARAM_VALUE 0 gpuvm->drm 0,4096-ptr_max
PARAM_VALUE 0 gpuvm->evict.list.next 4096-ptr_max
PARAM_VALUE 0 gpuvm->evict.list.prev 4096-ptr_max
PARAM_VALUE 0 gpuvm->extobj.list.next 4096-ptr_max
PARAM_VALUE 0 gpuvm->extobj.list.prev 4096-ptr_max
PARAM_VALUE 0 gpuvm->flags 0
PARAM_VALUE 0 gpuvm->kref.refcount.refs.counter 1
PARAM_VALUE 0 gpuvm->mm_range 140737488355328
PARAM_VALUE 0 gpuvm->mm_start 0
PARAM_VALUE 0 gpuvm->name 1-u64max
PARAM_VALUE 0 gpuvm->ops 4477932152281071616
PARAM_VALUE 0 gpuvm->r_obj 4096-ptr_max
PARAM_VALUE 0 gpuvm->rb.list.next 4096-ptr_max
PARAM_VALUE 0 gpuvm->rb.list.prev 4096-ptr_max
PARAM_VALUE 0 gpuvm->rb.tree.rb_root.rb_node 4096-ptr_max
NOCHECK_CALL
USER_DATA 0 gpuvm->kernel_alloc_node.va.addr 0
USER_DATA 0 gpuvm->kernel_alloc_node.va.range 0[u]
LOCK2 &cli->mutex
TYPE_LOCK (struct nouveau_cli)->mutex

drivers/gpu/drm/xe/xe_vm.c xe_vm_put() -> drm_gpuvm_put()

Type Parameter Key Value
PARAM_VALUE 0 gpuvm 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/gpu/drm/xe/xe_exec_queue.c xe_vm_put() -> drm_gpuvm_put()

Type Parameter Key Value
PARAM_VALUE 0 gpuvm 1-u64max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/gpu/drm/xe/xe_bo.c xe_vm_put() -> drm_gpuvm_put()

Type Parameter Key Value
PARAM_VALUE 0 gpuvm 1-u64max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/gpu/drm/msm/adreno/a6xx_gmu.c a6xx_gmu_memory_free() -> drm_gpuvm_put()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/gpu/drm/msm/msm_gpu.c msm_gpu_cleanup() -> drm_gpuvm_put()

Type Parameter Key Value
PARAM_VALUE 0 gpuvm 1-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/gpu/drm/xe/xe_svm.c xe_vm_put() -> drm_gpuvm_put()

Type Parameter Key Value
PARAM_VALUE 0 gpuvm 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &vm->lock

drivers/gpu/drm/xe/xe_guc_tlb_inval.c xe_vm_put() -> drm_gpuvm_put()

Type Parameter Key Value
PARAM_VALUE 0 gpuvm 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &tlb_inval->seqno_lock
HALF_LOCKED2 &vm->lock
HALF_LOCKED2 global &drm_unplug_srcu
TYPE_LOCK (struct xe_tlb_inval)->seqno_lock

drivers/gpu/drm/drm_gpuvm.c drm_gpuva_remove() -> drm_gpuvm_put()

Type Parameter Key Value
PARAM_VALUE 0 gpuvm->rb.tree.rb_leftmost 0,4096-ptr_max
BUF_SIZE 0 gpuvm (-1),416
BUF_SIZE 0 gpuvm (-1),416
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &sched->mutex
HALF_LOCKED2 &uvmm->mutex
HALF_LOCKED2 &vm->lock
HALF_LOCKED2 &vm->snap_mutex

drivers/gpu/drm/drm_gpuvm.c drm_gpuvm_bo_destroy_not_in_lists() -> drm_gpuvm_put()

Type Parameter Key Value
PARAM_VALUE 0 gpuvm 4096-ptr_max
PARAM_VALUE 0 gpuvm->ops 0,4096-ptr_max
PARAM_VALUE 0 gpuvm->ops->vm_bo_free 0,5555473383884926976
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/gpu/drm/panthor/panthor_mmu.c panthor_vm_put() -> drm_gpuvm_put()

Type Parameter Key Value
BUF_SIZE 0 gpuvm 0,416
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 global &drm_unplug_srcu