diff options
author | Christian König <christian.koenig@amd.com> | 2019-02-01 11:11:29 -0500 |
---|---|---|
committer | Alex Deucher <alexander.deucher@amd.com> | 2019-03-19 16:36:48 -0400 |
commit | adc7bfe50bd946b51a8a93ac15085cd218a2a9af (patch) | |
tree | f12c7ef811061714fa6ce356239eeb62692002a4 /drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c | |
parent | e35fb064d8d4de8ecea38dae48f04d0253e3d9be (diff) |
drm/amdgpu: drop the huge page flag
Not needed any more since we now free PDs/PTs on demand.
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_vm.c')
-rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c | 14 |
1 files changed, 1 insertions, 13 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c index 92334efa19a8..045da0e5691c 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c | |||
@@ -1371,10 +1371,6 @@ static void amdgpu_vm_update_pde(struct amdgpu_pte_update_params *params, | |||
1371 | uint64_t pde, pt, flags; | 1371 | uint64_t pde, pt, flags; |
1372 | unsigned level; | 1372 | unsigned level; |
1373 | 1373 | ||
1374 | /* Don't update huge pages here */ | ||
1375 | if (entry->huge) | ||
1376 | return; | ||
1377 | |||
1378 | for (level = 0, pbo = bo->parent; pbo; ++level) | 1374 | for (level = 0, pbo = bo->parent; pbo; ++level) |
1379 | pbo = pbo->parent; | 1375 | pbo = pbo->parent; |
1380 | 1376 | ||
@@ -1638,13 +1634,6 @@ static int amdgpu_vm_update_ptes(struct amdgpu_pte_update_params *params, | |||
1638 | continue; | 1634 | continue; |
1639 | } | 1635 | } |
1640 | 1636 | ||
1641 | /* If it isn't already handled it can't be a huge page */ | ||
1642 | if (cursor.entry->huge) { | ||
1643 | /* Add the entry to the relocated list to update it. */ | ||
1644 | cursor.entry->huge = false; | ||
1645 | amdgpu_vm_bo_relocated(&cursor.entry->base); | ||
1646 | } | ||
1647 | |||
1648 | shift = amdgpu_vm_level_shift(adev, cursor.level); | 1637 | shift = amdgpu_vm_level_shift(adev, cursor.level); |
1649 | parent_shift = amdgpu_vm_level_shift(adev, cursor.level - 1); | 1638 | parent_shift = amdgpu_vm_level_shift(adev, cursor.level - 1); |
1650 | if (adev->asic_type < CHIP_VEGA10) { | 1639 | if (adev->asic_type < CHIP_VEGA10) { |
@@ -1703,9 +1692,8 @@ static int amdgpu_vm_update_ptes(struct amdgpu_pte_update_params *params, | |||
1703 | } while (frag_start < entry_end); | 1692 | } while (frag_start < entry_end); |
1704 | 1693 | ||
1705 | if (amdgpu_vm_pt_descendant(adev, &cursor)) { | 1694 | if (amdgpu_vm_pt_descendant(adev, &cursor)) { |
1706 | /* Mark all child entries as huge */ | 1695 | /* Free all child entries */ |
1707 | while (cursor.pfn < frag_start) { | 1696 | while (cursor.pfn < frag_start) { |
1708 | cursor.entry->huge = true; | ||
1709 | amdgpu_vm_free_pts(adev, params->vm, &cursor); | 1697 | amdgpu_vm_free_pts(adev, params->vm, &cursor); |
1710 | amdgpu_vm_pt_next(adev, &cursor); | 1698 | amdgpu_vm_pt_next(adev, &cursor); |
1711 | } | 1699 | } |