Mesa (master): radv/winsys: fix resetting the number of padded IB words

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Fri Apr 23 11:50:11 UTC 2021


Module: Mesa
Branch: master
Commit: f9e9b21e10cd3e26c4210bbf646f246a52444426
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=f9e9b21e10cd3e26c4210bbf646f246a52444426

Author: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Date:   Wed Apr 21 16:06:30 2021 +0200

radv/winsys: fix resetting the number of padded IB words

The number of padded words is per IB, so it should be reset.

Found with Valgrind and dEQP-VK.api.command_buffers.record_many_draws*

Cc: 21.1 mesa-stable
Signed-off-by: Samuel Pitoiset <samuel.pitoiset at gmail.com>
Reviewed-by: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/10376>

---

 src/amd/vulkan/winsys/amdgpu/radv_amdgpu_cs.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/amd/vulkan/winsys/amdgpu/radv_amdgpu_cs.c b/src/amd/vulkan/winsys/amdgpu/radv_amdgpu_cs.c
index 65e5d76d23f..1cfd2921a6d 100644
--- a/src/amd/vulkan/winsys/amdgpu/radv_amdgpu_cs.c
+++ b/src/amd/vulkan/winsys/amdgpu/radv_amdgpu_cs.c
@@ -902,7 +902,6 @@ radv_amdgpu_winsys_cs_submit_sysmem(struct radeon_winsys_ctx *_ctx, int queue_id
       unsigned number_of_ibs;
       uint32_t *ptr;
       unsigned cnt = 0;
-      unsigned pad_words = 0;
 
       /* Compute the number of IBs for this submit. */
       number_of_ibs = cs->num_old_cs_buffers + 1;
@@ -935,6 +934,7 @@ radv_amdgpu_winsys_cs_submit_sysmem(struct radeon_winsys_ctx *_ctx, int queue_id
          for (unsigned j = 0; j < number_of_ibs; j++) {
             struct radeon_cmdbuf *rcs = new_cs_array[j];
             bool needs_preamble = preamble_cs && j == 0;
+            unsigned pad_words = 0;
             unsigned size = 0;
 
             if (needs_preamble)
@@ -973,6 +973,7 @@ radv_amdgpu_winsys_cs_submit_sysmem(struct radeon_winsys_ctx *_ctx, int queue_id
          cnt++;
          free(new_cs_array);
       } else {
+         unsigned pad_words = 0;
          unsigned size = 0;
 
          if (preamble_cs)



More information about the mesa-commit mailing list