Documented in 1 files:
Defined in 2 files as a function:
- drivers/gpu/drm/xe/xe_svm.h, line 196 (as a function)
- drivers/gpu/drm/xe/xe_svm.h, line 351 (as a function)
Referenced in 3 files:
Smatch caller information:
drivers/gpu/drm/xe/xe_vm.c prefetch_thread_func() -> xe_svm_range_start()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | range | 4096-ptr_max |
| LOCK2 | _T->lock | ||
| HALF_LOCKED2 | &vm->lock |
drivers/gpu/drm/xe/xe_pt.c bind_range_prepare() -> xe_svm_range_start()
| Type | Parameter | Key | Value |
|---|---|---|---|
| DATA_SOURCE | 0 | range | $4 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &pool->lock | ||
| HALF_LOCKED2 | &vm->lock |
drivers/gpu/drm/xe/xe_pt.c bind_range_prepare() -> xe_svm_range_start()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | range | 4096-ptr_max |
| DATA_SOURCE | 0 | range | $4 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &pool->lock | ||
| HALF_LOCKED2 | &vm->lock |
drivers/gpu/drm/xe/xe_pt.c unbind_range_prepare() -> xe_svm_range_start()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | range | 4096-ptr_max |
| DATA_SOURCE | 0 | range | $3 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &pool->lock | ||
| HALF_LOCKED2 | &vm->lock |
drivers/gpu/drm/xe/xe_pt.c unbind_range_prepare() -> xe_svm_range_start()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | range | 4096-ptr_max |
| DATA_SOURCE | 0 | range | $3 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &pool->lock | ||
| HALF_LOCKED2 | &vm->lock |
drivers/gpu/drm/xe/xe_pt.c xe_pt_stage_bind() -> xe_svm_range_start()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | range | 4096-ptr_max |
| DATA_SOURCE | 0 | range | $2 |
| HALF_LOCKED2 | &vm->lock |
drivers/gpu/drm/xe/xe_pt.c xe_pt_stage_bind() -> xe_svm_range_start()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | range | 4096-ptr_max |
| DATA_SOURCE | 0 | range | $2 |
| HALF_LOCKED2 | &vm->lock |
drivers/gpu/drm/xe/xe_pt.c xe_pt_stage_unbind() -> xe_svm_range_start()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | range | 4096-ptr_max |
| DATA_SOURCE | 0 | range | $3 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &vm->lock |
drivers/gpu/drm/xe/xe_pt.c xe_pt_zap_ptes_range() -> xe_svm_range_start()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | range | 4096-ptr_max |
| DATA_SOURCE | 0 | range | $2 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &gpusvm->notifier_lock | ||
| HALF_LOCKED2 | &vm->lock |
drivers/gpu/drm/xe/xe_svm.c __xe_svm_garbage_collector() -> xe_svm_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 | &vm->lock | ||
| HALF_LOCKED2 | _T->lock |
drivers/gpu/drm/xe/xe_svm.c __xe_svm_garbage_collector() -> xe_svm_range_start()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | range | 4096-ptr_max |
| DATA_SOURCE | 0 | range | $1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | _T->lock | ||
| HALF_LOCKED2 | &vm->lock |
drivers/gpu/drm/xe/xe_svm.c __xe_svm_handle_pagefault() -> xe_svm_range_start()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | range | 4096-ptr_max |
| CAPPED_DATA | 0 | &range->lock | 1 |
| DATA_SOURCE | 0 | range | r xe_svm_range_find_or_insert |
| LOCK2 | &range->lock | ||
| LOCK2 | &vm->lock | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct xe_svm_range)->lock | ||
| TYPE_LOCK | (struct xe_vm)->lock |
drivers/gpu/drm/xe/xe_svm.c __xe_svm_handle_pagefault() -> xe_svm_range_start()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | range | 4096-ptr_max |
| CAPPED_DATA | 0 | &range->lock | 1 |
| DATA_SOURCE | 0 | range | r xe_svm_range_find_or_insert |
| LOCK2 | &range->lock | ||
| LOCK2 | &vm->lock | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct xe_svm_range)->lock | ||
| TYPE_LOCK | (struct xe_vm)->lock |
drivers/gpu/drm/xe/xe_svm.c __xe_svm_handle_pagefault() -> xe_svm_range_start()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | range | 4096-ptr_max |
| CAPPED_DATA | 0 | &range->lock | 1 |
| DATA_SOURCE | 0 | range | r xe_svm_range_find_or_insert |
| LOCK2 | &range->lock | ||
| LOCK2 | &vm->lock | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct xe_svm_range)->lock | ||
| TYPE_LOCK | (struct xe_vm)->lock |
drivers/gpu/drm/xe/xe_svm.c __xe_svm_handle_pagefault() -> xe_svm_range_start()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | range | 4096-ptr_max |
| CAPPED_DATA | 0 | &range->lock | 1 |
| DATA_SOURCE | 0 | range | r xe_svm_range_find_or_insert |
| LOCK2 | &range->lock | ||
| LOCK2 | &vm->lock | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct xe_svm_range)->lock | ||
| TYPE_LOCK | (struct xe_vm)->lock |
drivers/gpu/drm/xe/xe_svm.c __xe_svm_handle_pagefault() -> xe_svm_range_start()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | range | 4096-ptr_max |
| CAPPED_DATA | 0 | &range->lock | 1 |
| DATA_SOURCE | 0 | range | r xe_svm_range_find_or_insert |
| LOCK2 | &range->lock | ||
| LOCK2 | &vm->lock | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct xe_svm_range)->lock | ||
| TYPE_LOCK | (struct xe_vm)->lock |
drivers/gpu/drm/xe/xe_svm.c __xe_svm_handle_pagefault() -> xe_svm_range_start()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | range | 4096-ptr_max |
| CAPPED_DATA | 0 | range->pages.dpagemap | 1 |
| CAPPED_DATA | 0 | &range->lock | 1 |
| DATA_SOURCE | 0 | range | r xe_svm_range_find_or_insert |
| LOCK2 | &range->lock | ||
| LOCK2 | &vm->lock | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct xe_svm_range)->lock | ||
| TYPE_LOCK | (struct xe_vm)->lock |
drivers/gpu/drm/xe/xe_svm.c xe_svm_alloc_vram() -> xe_svm_range_start()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | range | 4096-ptr_max |
| DATA_SOURCE | 0 | range | $0 |
| HALF_LOCKED2 | &range->lock | ||
| HALF_LOCKED2 | _T->lock |
drivers/gpu/drm/xe/xe_svm.c xe_svm_alloc_vram() -> xe_svm_range_start()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | range | 4096-ptr_max |
| DATA_SOURCE | 0 | range | $0 |
| LOCK2 | &driver_migrate_lock | ||
| HALF_LOCKED2 | _T->lock | ||
| HALF_LOCKED2 | 0 | &range->lock |
drivers/gpu/drm/xe/xe_svm.c xe_svm_garbage_collector() -> xe_svm_range_start()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | range | 4096-ptr_max |
| PREEMPT_ADD | <- disables preempt | ||
| LOCK2 | &vm->svm.garbage_collector.list_lock | ||
| LOCK2 | _T->lock |
drivers/gpu/drm/xe/xe_svm.c xe_svm_garbage_collector_add_range() -> xe_svm_range_start()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | range | 4096-ptr_max |
| DATA_SOURCE | 0 | range | $1 |
| 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_debug() -> xe_svm_range_start()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | range | 4096-ptr_max |
| DATA_SOURCE | 0 | range | $0 |
| STR_LEN | 0 | range | 10,18,20,24-25,31,33 |
| STR_LEN | 0 | range | 10,18,20,24-25,31,33 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &(&vm->svm.gpusvm)->notifier_lock | ||
| HALF_LOCKED2 | &vm->lock | ||
| HALF_LOCKED2 | &vm->svm.gpusvm.notifier_lock | ||
| HALF_LOCKED2 | _T->lock |
drivers/gpu/drm/xe/xe_svm.c xe_svm_range_get_pages() -> xe_svm_range_start()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | range | 4096-ptr_max |
| DATA_SOURCE | 0 | range | $1 |
| HALF_LOCKED2 | &range->lock | ||
| HALF_LOCKED2 | _T->lock |
drivers/gpu/drm/xe/xe_svm.c xe_svm_range_notifier_event_begin() -> xe_svm_range_start()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | range | 4096-ptr_max |
| DATA_SOURCE | 0 | range | r to_xe_range |
| 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_notifier_event_begin() -> xe_svm_range_start()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | range | 4096-ptr_max |
| DATA_SOURCE | 0 | range | r to_xe_range |
| 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_notifier_event_begin() -> xe_svm_range_start()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | range | 4096-ptr_max |
| DATA_SOURCE | 0 | range | r to_xe_range |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | &gpusvm->notifier_lock | ||
| HALF_LOCKED2 | &mm->mmap_lock | ||
| TYPE_LOCK | (struct drm_gpusvm)->notifier_lock |