aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlex Sierra <[email protected]>2020-10-03 13:31:21 -0500
committerAlex Deucher <[email protected]>2020-10-05 15:13:28 -0400
commit79b1eca0e4acab4c3c71e9563cbbd7ab79e9c70b (patch)
tree0fe2224a7aca88c12a42baeb2126d29c3bff9141
parent2ae78708047026397713a0e4af011bdd5d392e14 (diff)
drm/amdgpu: align frag_end to covered address space
align frag_end to the next pd when there are no page table entries on the current pde. This fixes invalidation of larger address space areas where some page tables are allocated and other aren't. Signed-off-by: Alex Sierra <[email protected]> Signed-off-by: Christian König <[email protected]> Signed-off-by: Alex Deucher <[email protected]>
-rw-r--r--drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c
index a4efc903349e..2b65e83c808b 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c
@@ -1502,6 +1502,8 @@ static int amdgpu_vm_update_ptes(struct amdgpu_vm_update_params *params,
pt = cursor.entry->base.bo;
shift = parent_shift;
+ frag_end = max(frag_end, ALIGN(frag_start + 1,
+ 1ULL << shift));
}
/* Looks good so far, calculate parameters for the update */