aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c
diff options
context:
space:
mode:
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, 5 insertions, 0 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c
index ae037e5b6ad0..a582ef553499 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c
@@ -1079,6 +1079,11 @@ int amdgpu_vm_bo_map(struct amdgpu_device *adev,
1079 if (r) 1079 if (r)
1080 goto error_free; 1080 goto error_free;
1081 1081
1082 /* Keep a reference to the page table to avoid freeing
1083 * them up in the wrong order.
1084 */
1085 pt->parent = amdgpu_bo_ref(vm->page_directory);
1086
1082 r = amdgpu_vm_clear_bo(adev, pt); 1087 r = amdgpu_vm_clear_bo(adev, pt);
1083 if (r) { 1088 if (r) {
1084 amdgpu_bo_unref(&pt); 1089 amdgpu_bo_unref(&pt);