Documented in 1 files:

Defined in 1 files as a function:

Referenced in 4 files:

Smatch caller information:

drivers/gpu/drm/drm_gpusvm.c drm_gpusvm_fini() -> drm_gpusvm_range_start()

Type Parameter Key Value
PARAM_VALUE 0 range 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
LOCK2 _T->lock
HALF_LOCKED2 &vm->lock

drivers/gpu/drm/drm_gpusvm.c drm_gpusvm_fini() -> drm_gpusvm_range_start()

Type Parameter Key Value
PARAM_VALUE 0 range 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
LOCK2 _T->lock
HALF_LOCKED2 &vm->lock

drivers/gpu/drm/drm_gpusvm.c drm_gpusvm_has_mapping() -> drm_gpusvm_range_start()

Type Parameter Key Value
PARAM_VALUE 0 range 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
LOCK2 &vm->lock
TYPE_LOCK (struct xe_vm)->lock

drivers/gpu/drm/drm_gpusvm.c drm_gpusvm_range_evict() -> drm_gpusvm_range_start()

Type Parameter Key Value
PARAM_VALUE 0 range 4096-ptr_max
DATA_SOURCE 0 range $1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &driver_migrate_lock
HALF_LOCKED2 &vm->lock

drivers/gpu/drm/drm_gpusvm.c drm_gpusvm_range_evict() -> drm_gpusvm_range_start()

Type Parameter Key Value
PARAM_VALUE 0 range 4096-ptr_max
DATA_SOURCE 0 range $1
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &driver_migrate_lock
HALF_LOCKED2 &vm->lock

drivers/gpu/drm/drm_gpusvm.c drm_gpusvm_range_remove() -> drm_gpusvm_range_start()

Type Parameter Key Value
PARAM_VALUE 0 range 4096-ptr_max
DATA_SOURCE 0 range $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &vm->lock
HALF_LOCKED2 _T->lock

drivers/gpu/drm/drm_gpusvm.c drm_gpusvm_range_remove() -> drm_gpusvm_range_start()

Type Parameter Key Value
PARAM_VALUE 0 range 4096-ptr_max
DATA_SOURCE 0 range $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &vm->lock
HALF_LOCKED2 _T->lock

drivers/gpu/drm/drm_gpusvm.c drm_gpusvm_range_set_unmapped() -> drm_gpusvm_range_start()

Type Parameter Key Value
PARAM_VALUE 0 range 4096-ptr_max
DATA_SOURCE 0 range $0
RX_PATH
TASK_NOT_RUNNING
LOCK2 &gpusvm->notifier_lock
HALF_LOCKED2 &mm->mmap_lock
TYPE_LOCK (struct drm_gpusvm)->notifier_lock

drivers/gpu/drm/drm_gpusvm.c drm_gpusvm_scan_mm() -> drm_gpusvm_range_start()

Type Parameter Key Value
PARAM_VALUE 0 range 4096-ptr_max
DATA_SOURCE 0 range $0
HALF_LOCKED2 &range->lock

drivers/gpu/drm/xe/xe_vm.c xe_svm_range_start() -> drm_gpusvm_range_start()

Type Parameter Key Value
PARAM_VALUE 0 range 4096-ptr_max
LOCK2 _T->lock

drivers/gpu/drm/xe/xe_pt.c drm_gpusvm_range_size() -> drm_gpusvm_range_start()

Type Parameter Key Value
PARAM_VALUE 0 range 4096-ptr_max
DATA_SOURCE 0 range $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &(&vm->svm.gpusvm)->notifier_lock
HALF_LOCKED2 &vm->lock

drivers/gpu/drm/xe/xe_pt.c xe_svm_range_start() -> drm_gpusvm_range_start()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &vm->lock

drivers/gpu/drm/xe/xe_svm.c drm_gpusvm_range_size() -> drm_gpusvm_range_start()

Type Parameter Key Value
PARAM_VALUE 0 range 4096-ptr_max
DATA_SOURCE 0 range $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &gpusvm->notifier_lock
HALF_LOCKED2 &vm->lock
HALF_LOCKED2 _T->lock

drivers/gpu/drm/xe/xe_svm.c xe_svm_fini() -> drm_gpusvm_range_start()

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

drivers/gpu/drm/xe/xe_svm.c xe_svm_fini() -> drm_gpusvm_range_start()

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

drivers/gpu/drm/xe/xe_svm.c xe_svm_invalidate() -> drm_gpusvm_range_start()

Type Parameter Key Value
PARAM_VALUE 0 range 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
LOCK2 &gpusvm->notifier_lock
HALF_LOCKED2 &mm->mmap_lock
TYPE_LOCK (struct drm_gpusvm)->notifier_lock

drivers/gpu/drm/xe/xe_svm.c xe_svm_invalidate() -> drm_gpusvm_range_start()

Type Parameter Key Value
PARAM_VALUE 0 range 4096-ptr_max
DATA_SOURCE 0 range r __drm_gpusvm_range_next
PARAM_COMPARE 0 &range->notifier->range_list != $0->entry.next
RX_PATH
TASK_NOT_RUNNING
LOCK2 &gpusvm->notifier_lock
HALF_LOCKED2 &mm->mmap_lock
TYPE_LOCK (struct drm_gpusvm)->notifier_lock

drivers/gpu/drm/xe/xe_svm.c xe_svm_invalidate() -> drm_gpusvm_range_start()

Type Parameter Key Value
PARAM_VALUE 0 range 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
LOCK2 &gpusvm->notifier_lock
HALF_LOCKED2 &mm->mmap_lock
TYPE_LOCK (struct drm_gpusvm)->notifier_lock

drivers/gpu/drm/xe/xe_svm.c xe_svm_invalidate() -> drm_gpusvm_range_start()

Type Parameter Key Value
PARAM_VALUE 0 range 4096-ptr_max
DATA_SOURCE 0 range r __drm_gpusvm_range_next
PARAM_COMPARE 0 &range->notifier->range_list != $0->entry.next
RX_PATH
TASK_NOT_RUNNING
LOCK2 &gpusvm->notifier_lock
HALF_LOCKED2 &mm->mmap_lock
TYPE_LOCK (struct drm_gpusvm)->notifier_lock

drivers/gpu/drm/xe/xe_svm.c xe_svm_range_get_pages() -> drm_gpusvm_range_start()

Type Parameter Key Value
PARAM_VALUE 0 range 4096-ptr_max
HALF_LOCKED2 &range->lock
HALF_LOCKED2 _T->lock

drivers/gpu/drm/xe/xe_svm.c xe_svm_range_start() -> drm_gpusvm_range_start()

Type Parameter Key Value
PARAM_VALUE 0 range 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &driver_migrate_lock
HALF_LOCKED2 &gpusvm->notifier_lock
HALF_LOCKED2 &range->lock
HALF_LOCKED2 &range->lock
HALF_LOCKED2 &vm->lock
HALF_LOCKED2 &vm->svm.garbage_collector.list_lock
HALF_LOCKED2 _T->lock

drivers/gpu/drm/xe/xe_svm.c xe_svm_ranges_zap_ptes_in_range() -> drm_gpusvm_range_start()

Type Parameter Key Value
PARAM_VALUE 0 range 4096-ptr_max
LOCK2 &vm->lock
HALF_LOCKED2 &vm->svm.gpusvm.notifier_lock
TYPE_LOCK (struct xe_vm)->lock

drivers/gpu/drm/xe/xe_svm.c xe_svm_ranges_zap_ptes_in_range() -> drm_gpusvm_range_start()

Type Parameter Key Value
PARAM_VALUE 0 range 4096-ptr_max
DATA_SOURCE 0 range r __drm_gpusvm_range_next
PARAM_COMPARE 0 &range->notifier->range_list != $0->entry.next
LOCK2 &vm->lock
HALF_LOCKED2 &vm->svm.gpusvm.notifier_lock
TYPE_LOCK (struct xe_vm)->lock

drivers/gpu/drm/xe/xe_svm.c xe_svm_unmap_address_range() -> drm_gpusvm_range_start()

Type Parameter Key Value
PARAM_VALUE 0 range 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
LOCK2 &vm->lock
TYPE_LOCK (struct xe_vm)->lock

drivers/gpu/drm/xe/xe_svm.c xe_svm_unmap_address_range() -> drm_gpusvm_range_start()

Type Parameter Key Value
PARAM_VALUE 0 range 4096-ptr_max
PARAM_VALUE 0 range->itree.start 0-18446744073709551614
RX_PATH
TASK_NOT_RUNNING
LOCK2 &vm->lock
TYPE_LOCK (struct xe_vm)->lock

drivers/gpu/drm/xe/xe_svm.c xe_svm_unmap_address_range() -> drm_gpusvm_range_start()

Type Parameter Key Value
PARAM_VALUE 0 range 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
LOCK2 &vm->lock
TYPE_LOCK (struct xe_vm)->lock