diff options
author | Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl> | 2021-01-09 00:39:51 +0100 |
---|---|---|
committer | Dylan Baker <dylan.c.baker@intel.com> | 2021-01-12 15:27:41 -0800 |
commit | c5f73e66ed6b57ae991c8210467006999f1bd1b8 (patch) | |
tree | f9afef4e6830cd439c28444f0a51b2d1d15eb14d | |
parent | 107e4eea53e0bc05ee7176b5d0066416986d7862 (diff) |
radv/winsys: Fix offset in range merging.
If we change the virtual address we also have to change the offset in the buffer
to be mapped.
Fixes: 715df30a4e2 "radv/amdgpu: Add winsys implementation of virtual buffers."
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7953>
(cherry picked from commit d3286bdd764741b2cb6d30b59450ce9473884430)
-rw-r--r-- | .pick_status.json | 2 | ||||
-rw-r--r-- | src/amd/vulkan/winsys/amdgpu/radv_amdgpu_bo.c | 1 |
2 files changed, 2 insertions, 1 deletions
diff --git a/.pick_status.json b/.pick_status.json index 41e324e0967..1b347bd2041 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -985,7 +985,7 @@ "description": "radv/winsys: Fix offset in range merging.", "nominated": true, "nomination_type": 1, - "resolution": 0, + "resolution": 1, "master_sha": null, "because_sha": "715df30a4e27a76917d6172e68fd7f4c3ff1fb9d" }, diff --git a/src/amd/vulkan/winsys/amdgpu/radv_amdgpu_bo.c b/src/amd/vulkan/winsys/amdgpu/radv_amdgpu_bo.c index 2f58f4f2edd..7685c88274d 100644 --- a/src/amd/vulkan/winsys/amdgpu/radv_amdgpu_bo.c +++ b/src/amd/vulkan/winsys/amdgpu/radv_amdgpu_bo.c @@ -250,6 +250,7 @@ radv_amdgpu_winsys_bo_virtual_bind(struct radeon_winsys_bo *_parent, if (!remove_last) { new_last.size -= offset + size - new_last.offset; + new_last.bo_offset += (offset + size - new_last.offset); new_last.offset = offset + size; radv_amdgpu_winsys_virtual_map(parent, &new_last); } |