Home
last modified time | relevance | path

Searched refs:gpusvm (Results 1 – 6 of 6) sorted by relevance

/linux-6.15/drivers/gpu/drm/
H A Ddrm_gpusvm.c504 struct drm_gpusvm *gpusvm = notifier->gpusvm; in drm_gpusvm_notifier_invalidate() local
511 gpusvm->ops->invalidate(gpusvm, notifier, mmu_range); in drm_gpusvm_notifier_invalidate()
556 gpusvm->drm = drm; in drm_gpusvm_init()
557 gpusvm->mm = mm; in drm_gpusvm_init()
562 gpusvm->ops = ops; in drm_gpusvm_init()
674 mmdrop(gpusvm->mm); in drm_gpusvm_fini()
701 notifier->gpusvm = gpusvm; in drm_gpusvm_notifier_alloc()
801 range = gpusvm->ops->range_alloc(gpusvm); in drm_gpusvm_range_alloc()
809 range->gpusvm = gpusvm; in drm_gpusvm_range_alloc()
1015 fault_addr > gpusvm->mm_start + gpusvm->mm_range) in drm_gpusvm_range_find_or_insert()
[all …]
/linux-6.15/include/drm/
H A Ddrm_gpusvm.h156 void (*invalidate)(struct drm_gpusvm *gpusvm,
179 struct drm_gpusvm *gpusvm; member
233 struct drm_gpusvm *gpusvm; member
318 int drm_gpusvm_init(struct drm_gpusvm *gpusvm,
326 void drm_gpusvm_fini(struct drm_gpusvm *gpusvm);
328 void drm_gpusvm_free(struct drm_gpusvm *gpusvm);
337 void drm_gpusvm_range_remove(struct drm_gpusvm *gpusvm,
340 int drm_gpusvm_range_evict(struct drm_gpusvm *gpusvm,
393 #define drm_gpusvm_driver_set_lock(gpusvm, lock) \ argument
395 if (!WARN((gpusvm)->lock_dep_map, \
[all …]
/linux-6.15/drivers/gpu/drm/xe/
H A Dxe_svm.h50 return drm_gpusvm_range_pages_valid(range->base.gpusvm, &range->base); in xe_svm_range_pages_valid()
140 lockdep_assert_held(&range->base.gpusvm->notifier_lock); in xe_svm_range_has_dma_mapping()
145 lockdep_assert_held_write(&(vm__)->svm.gpusvm.notifier_lock)
148 drm_gpusvm_notifier_lock(&(vm__)->svm.gpusvm)
151 drm_gpusvm_notifier_unlock(&(vm__)->svm.gpusvm)
H A Dxe_svm.c39 return container_of(gpusvm, struct xe_vm, svm.gpusvm); in gpusvm_to_vm()
44 return gpusvm_to_vm(r->gpusvm); in range_to_vm()
67 (r__)->base.gpusvm, \
85 xe_svm_range_alloc(struct drm_gpusvm *gpusvm) in xe_svm_range_alloc() argument
94 xe_vm_get(gpusvm_to_vm(gpusvm)); in xe_svm_range_alloc()
187 struct xe_vm *vm = gpusvm_to_vm(gpusvm); in xe_svm_invalidate()
201 vm_dbg(&gpusvm_to_vm(gpusvm)->xe->drm, in xe_svm_invalidate()
653 drm_gpusvm_fini(&vm->svm.gpusvm); in xe_svm_fini()
678 struct mm_struct *mm = vm->svm.gpusvm.mm; in xe_svm_alloc_vram()
848 drm_gpusvm_range_evict(&vm->svm.gpusvm, in xe_svm_handle_pagefault()
[all …]
H A Dxe_vm_types.h152 struct drm_gpusvm gpusvm; member
/linux-6.15/Documentation/gpu/rfc/
H A Dindex.rst21 gpusvm.rst