]> git.baikalelectronics.ru Git - kernel.git/commit
drm/amdkfd: support concurrent userptr update for HMM
authorPhilip Yang <Philip.Yang@amd.com>
Mon, 4 Mar 2019 19:10:12 +0000 (14:10 -0500)
committerAlex Deucher <alexander.deucher@amd.com>
Tue, 19 Mar 2019 20:36:58 +0000 (15:36 -0500)
commit764ff6c8b6f4badc2943a29fccea7acaa3588844
tree3f02de502fd0da0d899a1fd3c9f5fe929e16dc34
parentff88bef9be3eeacc10ff69f011228471008705cd
drm/amdkfd: support concurrent userptr update for HMM

Userptr restore may have concurrent userptr invalidation after
hmm_vma_fault adds the range to the hmm->ranges list, needs call
hmm_vma_range_done to remove the range from hmm->ranges list first,
then reschedule the restore worker. Otherwise hmm_vma_fault will add
same range to the list, this will cause loop in the list because
range->next point to range itself.

Add function untrack_invalid_user_pages to reduce code duplication.

Signed-off-by: Philip Yang <Philip.Yang@amd.com>
Reviewed-by: Felix Kuehling <Felix.Kuehling@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c