mirror of
https://github.com/torvalds/linux.git
synced 2026-04-27 11:02:31 -04:00
drm/xe/vm: Simplify and document xe_vm_lock()
The xe_vm_lock() function was unnecessarily using ttm_eu_reserve_buffers(). Simplify and document the interface. v4: - Improve on xe_vm_lock() documentation (Matthew Brost) v5: - Rebase conflict. Signed-off-by: Thomas Hellström <thomas.hellstrom@linux.intel.com> Reviewed-by: Matthew Brost <matthew.brost@intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/20230908091716.36984-3-thomas.hellstrom@linux.intel.com Signed-off-by: Rodrigo Vivi <rodrigo.vivi@intel.com>
This commit is contained in:
committed by
Rodrigo Vivi
parent
08a4f00e62
commit
d00e9cc28e
@@ -180,7 +180,6 @@ static int evict_test_run_tile(struct xe_device *xe, struct xe_tile *tile, struc
|
||||
unsigned int bo_flags = XE_BO_CREATE_USER_BIT |
|
||||
XE_BO_CREATE_VRAM_IF_DGFX(tile);
|
||||
struct xe_vm *vm = xe_migrate_get_vm(xe_device_get_root_tile(xe)->migrate);
|
||||
struct ww_acquire_ctx ww;
|
||||
struct xe_gt *__gt;
|
||||
int err, i, id;
|
||||
|
||||
@@ -188,10 +187,10 @@ static int evict_test_run_tile(struct xe_device *xe, struct xe_tile *tile, struc
|
||||
dev_name(xe->drm.dev), tile->id);
|
||||
|
||||
for (i = 0; i < 2; ++i) {
|
||||
xe_vm_lock(vm, &ww, 0, false);
|
||||
xe_vm_lock(vm, false);
|
||||
bo = xe_bo_create(xe, NULL, vm, 0x10000, ttm_bo_type_device,
|
||||
bo_flags);
|
||||
xe_vm_unlock(vm, &ww);
|
||||
xe_vm_unlock(vm);
|
||||
if (IS_ERR(bo)) {
|
||||
KUNIT_FAIL(test, "bo create err=%pe\n", bo);
|
||||
break;
|
||||
@@ -263,9 +262,9 @@ static int evict_test_run_tile(struct xe_device *xe, struct xe_tile *tile, struc
|
||||
|
||||
if (i) {
|
||||
down_read(&vm->lock);
|
||||
xe_vm_lock(vm, &ww, 0, false);
|
||||
xe_vm_lock(vm, false);
|
||||
err = xe_bo_validate(bo, bo->vm, false);
|
||||
xe_vm_unlock(vm, &ww);
|
||||
xe_vm_unlock(vm);
|
||||
up_read(&vm->lock);
|
||||
if (err) {
|
||||
KUNIT_FAIL(test, "bo valid err=%pe\n",
|
||||
|
||||
@@ -396,14 +396,13 @@ static int migrate_test_run_device(struct xe_device *xe)
|
||||
|
||||
for_each_tile(tile, xe, id) {
|
||||
struct xe_migrate *m = tile->migrate;
|
||||
struct ww_acquire_ctx ww;
|
||||
|
||||
kunit_info(test, "Testing tile id %d.\n", id);
|
||||
xe_vm_lock(m->q->vm, &ww, 0, true);
|
||||
xe_vm_lock(m->q->vm, true);
|
||||
xe_device_mem_access_get(xe);
|
||||
xe_migrate_sanity_test(m, test);
|
||||
xe_device_mem_access_put(xe);
|
||||
xe_vm_unlock(m->q->vm, &ww);
|
||||
xe_vm_unlock(m->q->vm);
|
||||
}
|
||||
|
||||
return 0;
|
||||
|
||||
Reference in New Issue
Block a user