From: Nirmoy Das Date: Fri, 26 Mar 2021 15:08:10 +0000 (+0100) Subject: drm/amdgpu: fix offset calculation in amdgpu_vm_bo_clear_mappings() X-Git-Tag: Ubuntu-5.11.0-14.15~52 X-Git-Url: https://git.proxmox.com/?a=commitdiff_plain;h=787fece7b78a8886063f150a6bb4435fca829260;hp=e54998c2731e127945e349492dedc6f5e2fc3442;p=mirror_ubuntu-hirsute-kernel.git drm/amdgpu: fix offset calculation in amdgpu_vm_bo_clear_mappings() BugLink: https://bugs.launchpad.net/bugs/1923069 commit 5e61b84f9d3ddfba73091f9fbc940caae1c9eb22 upstream. Offset calculation wasn't correct as start addresses are in pfn not in bytes. CC: stable@vger.kernel.org Signed-off-by: Nirmoy Das Reviewed-by: Christian König Signed-off-by: Alex Deucher Signed-off-by: Greg Kroah-Hartman Signed-off-by: Andrea Righi --- diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c index 0768c8686983..c498cfbdb690 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c @@ -2407,7 +2407,7 @@ int amdgpu_vm_bo_clear_mappings(struct amdgpu_device *adev, after->start = eaddr + 1; after->last = tmp->last; after->offset = tmp->offset; - after->offset += after->start - tmp->start; + after->offset += (after->start - tmp->start) << PAGE_SHIFT; after->flags = tmp->flags; after->bo_va = tmp->bo_va; list_add(&after->list, &tmp->bo_va->invalids);