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

Author: Tatsuyuki Ishi <[email protected]>
Date:   Tue Feb 28 15:29:56 2023 +0900

radv: SDMA v4 size field is size - 1

After cross-checking with kernel and the old buffer copy code, it seems
that the size field should be size - 1 instead.

Fixes: 7b5ab48c40b ("radv: partial sdma support")

Reviewed-by: Pierre-Eric Pelloux-Prayer <[email protected]>
Reviewed-by: Samuel Pitoiset <[email protected]>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21585>

---

 src/amd/vulkan/radv_sdma_copy_image.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/amd/vulkan/radv_sdma_copy_image.c 
b/src/amd/vulkan/radv_sdma_copy_image.c
index 5fb6b1a4753..d9224fbb510 100644
--- a/src/amd/vulkan/radv_sdma_copy_image.c
+++ b/src/amd/vulkan/radv_sdma_copy_image.c
@@ -94,7 +94,7 @@ radv_sdma_v4_v5_copy_image_to_buffer(struct radv_cmd_buffer 
*cmd_buffer, struct
 
       radeon_emit(cmd_buffer->cs, CIK_SDMA_PACKET(CIK_SDMA_OPCODE_COPY,
                                                   
CIK_SDMA_COPY_SUB_OPCODE_LINEAR, (tmz ? 4 : 0)));
-      radeon_emit(cmd_buffer->cs, bytes);
+      radeon_emit(cmd_buffer->cs, bytes - 1);
       radeon_emit(cmd_buffer->cs, 0);
       radeon_emit(cmd_buffer->cs, src_address);
       radeon_emit(cmd_buffer->cs, src_address >> 32);

Reply via email to