aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c
diff options
context:
space:
mode:
authorDan Williams <dan.j.williams@intel.com>2019-03-11 15:37:55 -0400
committerDan Williams <dan.j.williams@intel.com>2019-03-11 15:37:55 -0400
commit4083014e32699af04a8e6eaa4855b08dba36a47a (patch)
treefa37f9f9691fe64ca8a3c0cdc0315dc12462e6e4 /drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c
parent6fd96ff557963de8e62842a0dc360a6e3610d2bb (diff)
parent78153dd45e7e0596ba32b15d02bda08e1513111e (diff)
Merge branch 'for-5.1/nfit/ars' into libnvdimm-for-next
Merge several updates to the ARS implementation. Highlights include: * Support retrieval of short-ARS results if the ARS state is "requires continuation", and even if the "no_init_ars" module parameter is specified. * Allow busy-polling of the kernel ARS state by allowing root to reset the exponential back-off timer. * Filter potentially stale ARS results by tracking query-ARS relative to the previous start-ARS.
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c')
-rw-r--r--drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c
index d2ea5ce2cefb..7c108e687683 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c
@@ -3363,14 +3363,15 @@ void amdgpu_vm_get_task_info(struct amdgpu_device *adev, unsigned int pasid,
3363 struct amdgpu_task_info *task_info) 3363 struct amdgpu_task_info *task_info)
3364{ 3364{
3365 struct amdgpu_vm *vm; 3365 struct amdgpu_vm *vm;
3366 unsigned long flags;
3366 3367
3367 spin_lock(&adev->vm_manager.pasid_lock); 3368 spin_lock_irqsave(&adev->vm_manager.pasid_lock, flags);
3368 3369
3369 vm = idr_find(&adev->vm_manager.pasid_idr, pasid); 3370 vm = idr_find(&adev->vm_manager.pasid_idr, pasid);
3370 if (vm) 3371 if (vm)
3371 *task_info = vm->task_info; 3372 *task_info = vm->task_info;
3372 3373
3373 spin_unlock(&adev->vm_manager.pasid_lock); 3374 spin_unlock_irqrestore(&adev->vm_manager.pasid_lock, flags);
3374} 3375}
3375 3376
3376/** 3377/**