Commit adc7bfe5 authored by Christian König's avatar Christian König Committed by Alex Deucher

drm/amdgpu: drop the huge page flag

Not needed any more since we now free PDs/PTs on demand.
Signed-off-by: default avatarChristian König <christian.koenig@amd.com>
Reviewed-by: default avatarFelix Kuehling <Felix.Kuehling@amd.com>
Acked-by: default avatarHuang Rui <ray.huang@amd.com>
Signed-off-by: default avatarAlex Deucher <alexander.deucher@amd.com>
parent e35fb064
...@@ -1371,10 +1371,6 @@ static void amdgpu_vm_update_pde(struct amdgpu_pte_update_params *params, ...@@ -1371,10 +1371,6 @@ static void amdgpu_vm_update_pde(struct amdgpu_pte_update_params *params,
uint64_t pde, pt, flags; uint64_t pde, pt, flags;
unsigned level; unsigned level;
/* Don't update huge pages here */
if (entry->huge)
return;
for (level = 0, pbo = bo->parent; pbo; ++level) for (level = 0, pbo = bo->parent; pbo; ++level)
pbo = pbo->parent; pbo = pbo->parent;
...@@ -1638,13 +1634,6 @@ static int amdgpu_vm_update_ptes(struct amdgpu_pte_update_params *params, ...@@ -1638,13 +1634,6 @@ static int amdgpu_vm_update_ptes(struct amdgpu_pte_update_params *params,
continue; continue;
} }
/* If it isn't already handled it can't be a huge page */
if (cursor.entry->huge) {
/* Add the entry to the relocated list to update it. */
cursor.entry->huge = false;
amdgpu_vm_bo_relocated(&cursor.entry->base);
}
shift = amdgpu_vm_level_shift(adev, cursor.level); shift = amdgpu_vm_level_shift(adev, cursor.level);
parent_shift = amdgpu_vm_level_shift(adev, cursor.level - 1); parent_shift = amdgpu_vm_level_shift(adev, cursor.level - 1);
if (adev->asic_type < CHIP_VEGA10) { if (adev->asic_type < CHIP_VEGA10) {
...@@ -1703,9 +1692,8 @@ static int amdgpu_vm_update_ptes(struct amdgpu_pte_update_params *params, ...@@ -1703,9 +1692,8 @@ static int amdgpu_vm_update_ptes(struct amdgpu_pte_update_params *params,
} while (frag_start < entry_end); } while (frag_start < entry_end);
if (amdgpu_vm_pt_descendant(adev, &cursor)) { if (amdgpu_vm_pt_descendant(adev, &cursor)) {
/* Mark all child entries as huge */ /* Free all child entries */
while (cursor.pfn < frag_start) { while (cursor.pfn < frag_start) {
cursor.entry->huge = true;
amdgpu_vm_free_pts(adev, params->vm, &cursor); amdgpu_vm_free_pts(adev, params->vm, &cursor);
amdgpu_vm_pt_next(adev, &cursor); amdgpu_vm_pt_next(adev, &cursor);
} }
......
...@@ -140,7 +140,6 @@ struct amdgpu_vm_bo_base { ...@@ -140,7 +140,6 @@ struct amdgpu_vm_bo_base {
struct amdgpu_vm_pt { struct amdgpu_vm_pt {
struct amdgpu_vm_bo_base base; struct amdgpu_vm_bo_base base;
bool huge;
/* array of page tables, one for each directory entry */ /* array of page tables, one for each directory entry */
struct amdgpu_vm_pt *entries; struct amdgpu_vm_pt *entries;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment