Home
last modified time | relevance | path

Searched refs:usm (Results 1 – 16 of 16) sorted by relevance

/linux/drivers/gpu/drm/xe/
H A Dxe_pagefault.c159 down_read(&xe->usm.lock); in xe_pagefault_asid_to_vm()
160 vm = xa_load(&xe->usm.asid_to_vm, asid); in xe_pagefault_asid_to_vm()
165 up_read(&xe->usm.lock); in xe_pagefault_asid_to_vm()
219 vm->usm.last_fault_vma = vma; in xe_pagefault_service()
275 down_read(&xe->usm.lock); in xe_pagefault_save_to_vm()
276 vm = xa_load(&xe->usm.asid_to_vm, pf->consumer.asid); in xe_pagefault_save_to_vm()
281 up_read(&xe->usm.lock); in xe_pagefault_save_to_vm()
324 queue_work(gt_to_xe(pf.gt)->usm.pf_wq, w); in xe_pagefault_queue_work()
382 destroy_workqueue(xe->usm.pf_wq); in xe_pagefault_fini()
400 xe->usm.pf_wq = alloc_workqueue("xe_page_fault_work_queue", in xe_pagefault_init()
[all …]
H A Dxe_device.c483 init_rwsem(&xe->usm.lock); in xe_device_create()
489 xa_init_flags(&xe->usm.asid_to_vm, XA_FLAGS_ALLOC); in xe_device_create()
496 err = xa_alloc_cyclic(&xe->usm.asid_to_vm, &asid, NULL, in xe_device_create()
498 &xe->usm.next_asid, GFP_KERNEL); in xe_device_create()
501 xa_erase(&xe->usm.asid_to_vm, asid); in xe_device_create()
1423 down_read(&xe->usm.lock); in xe_device_asid_to_vm()
1424 vm = xa_load(&xe->usm.asid_to_vm, asid); in xe_device_asid_to_vm()
1429 up_read(&xe->usm.lock); in xe_device_asid_to_vm()
H A Dxe_migrate.c266 batch = tile->primary_gt->usm.bb_pool->bo; in xe_migrate_prepare_vm()
287 batch = tile->primary_gt->usm.bb_pool->bo; in xe_migrate_prepare_vm()
483 primary_gt->usm.reserved_bcs_instance, in xe_migrate_init()
817 static u64 xe_migrate_batch_base(struct xe_migrate *m, bool usm) in xe_migrate_batch_base() argument
819 return usm ? m->usm_batch_base_ofs : m->batch_base_ofs; in xe_migrate_batch_base()
932 bool usm = xe->info.has_usm; in __xe_migrate_copy() local
972 bb = xe_bb_new(gt, batch_size, usm); in __xe_migrate_copy()
1007 xe_migrate_batch_base(m, usm), in __xe_migrate_copy()
1394 bool usm = xe->info.has_usm; in xe_migrate_vram_copy_chunk() local
1410 bb = xe_bb_new(gt, batch_size, usm); in xe_migrate_vram_copy_chunk()
[all …]
H A Dxe_svm.c95 (operation__), range_to_vm(&(r__)->base)->usm.asid, \
145 queue_work(xe->usm.pf_wq, &vm->svm.garbage_collector.work); in xe_svm_garbage_collector_add_range()
242 vm->usm.asid, gpusvm, notifier->notifier.invalidate_seq, in xe_svm_invalidate()
281 err = xe_tlb_inval_range_tilemask_submit(xe, vm->usm.asid, adj_start, adj_end, in xe_svm_invalidate()
1283 vm->usm.asid, ERR_PTR(err));
1298 vm->usm.asid, ERR_PTR(err));
1315 vm->usm.asid, &vm->svm.gpusvm, ERR_PTR(err));
1321 vm->usm.asid, &vm->svm.gpusvm, ERR_PTR(err));
1917 xe->usm.dpagemap_shrinker = drm_pagemap_shrinker_create_devm(&xe->drm); in xe_pagemap_shrinker_create()
1918 return PTR_ERR_OR_ZERO(xe->usm.dpagemap_shrinker); in xe_pagemap_shrinker_create()
[all …]
H A Dxe_trace_bo.h106 __entry->asid = xe_vma_vm(vma)->usm.asid;
202 __entry->asid = vm->usm.asid;
H A Dxe_gt_types.h237 } usm; member
H A Dxe_vm.c1336 if (vm->usm.last_fault_vma == vma) in xe_vm_remove_vma()
1337 vm->usm.last_fault_vma = NULL; in xe_vm_remove_vma()
1793 down_write(&xe->usm.lock); in xe_vm_create()
1794 err = xa_alloc_cyclic(&xe->usm.asid_to_vm, &asid, vm, in xe_vm_create()
1796 &xe->usm.next_asid, GFP_NOWAIT); in xe_vm_create()
1797 up_write(&xe->usm.lock); in xe_vm_create()
1801 vm->usm.asid = asid; in xe_vm_create()
1963 down_write(&xe->usm.lock); in xe_vm_close_and_put()
1964 if (vm->usm.asid) { in xe_vm_close_and_put()
1970 lookup = xa_erase(&xe->usm.asid_to_vm, vm->usm.asid); in xe_vm_close_and_put()
[all …]
H A Dxe_vm_types.h358 } usm; member
H A Dxe_gt.c661 gt->usm.bb_pool = xe_sa_bo_manager_init(gt_to_tile(gt), in gt_init_with_all_forcewake()
663 if (IS_ERR(gt->usm.bb_pool)) in gt_init_with_all_forcewake()
664 return PTR_ERR(gt->usm.bb_pool); in gt_init_with_all_forcewake()
H A Dxe_tlb_inval_job.c63 job->end, job->vm->usm.asid, prl_sa); in xe_tlb_inval_job_run()
H A Dxe_hw_engine.c645 gt->usm.reserved_bcs_instance = hwe->instance; in hw_engine_init()
1039 hwe->instance == gt->usm.reserved_bcs_instance; in xe_hw_engine_is_reserved()
H A Dxe_vm_madvise.c327 err = xe_tlb_inval_range_tilemask_submit(vm->xe, vm->usm.asid, start, end, in xe_vm_invalidate_madvise_range()
H A Dxe_exec_queue.c531 gt->usm.reserved_bcs_instance, in xe_exec_queue_create_bind()
H A Dxe_lrc.c1561 xe_lrc_write_ctx_reg(lrc, CTX_ASID, vm->usm.asid); in xe_lrc_ctx_init()
/linux/arch/powerpc/mm/
H A Ddrmem.c219 __walk_drmem_v1_lmbs(const __be32 *prop, const __be32 *usm, void *data, in __walk_drmem_v1_lmbs() argument
229 ret = func(&lmb, &usm, data); in __walk_drmem_v1_lmbs()
253 __walk_drmem_v2_lmbs(const __be32 *prop, const __be32 *usm, void *data, in __walk_drmem_v2_lmbs() argument
275 ret = func(&lmb, &usm, data); in __walk_drmem_v2_lmbs()
288 const __be32 *prop, *usm; in walk_drmem_lmbs_early() local
301 usm = of_get_flat_dt_prop(node, "linux,drconf-usable-memory", &len); in walk_drmem_lmbs_early()
305 ret = __walk_drmem_v1_lmbs(prop, usm, data, func); in walk_drmem_lmbs_early()
310 ret = __walk_drmem_v2_lmbs(prop, usm, data, func); in walk_drmem_lmbs_early()
321 __maybe_unused const __be32 **usm, in update_lmb() argument
397 const __be32 *prop, *usm; in walk_drmem_lmbs() local
[all …]
/linux/arch/powerpc/kexec/
H A Dfile_load_64.c147 static int kdump_setup_usable_lmb(struct drmem_lmb *lmb, const __be32 **usm, in kdump_setup_usable_lmb() argument
158 if (*usm) { in kdump_setup_usable_lmb()