diff options
author | Christian König <christian.koenig@amd.com> | 2019-01-30 10:07:29 -0500 |
---|---|---|
committer | Alex Deucher <alexander.deucher@amd.com> | 2019-03-19 16:36:48 -0400 |
commit | 0ce15d6f7d3fb1162fd7de2829dbdf6d63a6a02a (patch) | |
tree | c83a9a486a58d392808ea1453a7f5fa8b689d352 /drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c | |
parent | 780637cbdf8fd614cc85a01c6c810d9d28902a59 (diff) |
drm/amdgpu: allocate VM PDs/PTs on demand
Let's start to allocate VM PDs/PTs on demand instead of pre-allocating
them during mapping.
Signed-off-by: Christian König <christian.koenig@amd.com>
Reviewed-by: Felix Kuehling <Felix.Kuehling@amd.com>
Acked-by: Huang Rui <ray.huang@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c')
-rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c | 10 |
1 files changed, 0 insertions, 10 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c index 555285e329ed..fcaaac30e84b 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c | |||
@@ -625,11 +625,6 @@ int amdgpu_gem_va_ioctl(struct drm_device *dev, void *data, | |||
625 | 625 | ||
626 | switch (args->operation) { | 626 | switch (args->operation) { |
627 | case AMDGPU_VA_OP_MAP: | 627 | case AMDGPU_VA_OP_MAP: |
628 | r = amdgpu_vm_alloc_pts(adev, bo_va->base.vm, args->va_address, | ||
629 | args->map_size); | ||
630 | if (r) | ||
631 | goto error_backoff; | ||
632 | |||
633 | va_flags = amdgpu_gmc_get_pte_flags(adev, args->flags); | 628 | va_flags = amdgpu_gmc_get_pte_flags(adev, args->flags); |
634 | r = amdgpu_vm_bo_map(adev, bo_va, args->va_address, | 629 | r = amdgpu_vm_bo_map(adev, bo_va, args->va_address, |
635 | args->offset_in_bo, args->map_size, | 630 | args->offset_in_bo, args->map_size, |
@@ -645,11 +640,6 @@ int amdgpu_gem_va_ioctl(struct drm_device *dev, void *data, | |||
645 | args->map_size); | 640 | args->map_size); |
646 | break; | 641 | break; |
647 | case AMDGPU_VA_OP_REPLACE: | 642 | case AMDGPU_VA_OP_REPLACE: |
648 | r = amdgpu_vm_alloc_pts(adev, bo_va->base.vm, args->va_address, | ||
649 | args->map_size); | ||
650 | if (r) | ||
651 | goto error_backoff; | ||
652 | |||
653 | va_flags = amdgpu_gmc_get_pte_flags(adev, args->flags); | 643 | va_flags = amdgpu_gmc_get_pte_flags(adev, args->flags); |
654 | r = amdgpu_vm_bo_replace_map(adev, bo_va, args->va_address, | 644 | r = amdgpu_vm_bo_replace_map(adev, bo_va, args->va_address, |
655 | args->offset_in_bo, args->map_size, | 645 | args->offset_in_bo, args->map_size, |