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

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

radeonsi: 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: 46c95047bd7 ("radeonsi: implement si_sdma_copy_image for gfx7+")

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/gallium/drivers/radeonsi/si_sdma_copy_image.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/gallium/drivers/radeonsi/si_sdma_copy_image.c 
b/src/gallium/drivers/radeonsi/si_sdma_copy_image.c
index d542fe74ae5..c9b0dc4ef3b 100644
--- a/src/gallium/drivers/radeonsi/si_sdma_copy_image.c
+++ b/src/gallium/drivers/radeonsi/si_sdma_copy_image.c
@@ -134,7 +134,7 @@ bool si_sdma_v4_v5_copy_texture(struct si_context *sctx, 
struct si_texture *sdst
       radeon_emit(CIK_SDMA_PACKET(CIK_SDMA_OPCODE_COPY,
                                   CIK_SDMA_COPY_SUB_OPCODE_LINEAR,
                                   (tmz ? 4 : 0)));
-      radeon_emit(bytes);
+      radeon_emit(bytes - 1);
       radeon_emit(0);
       radeon_emit(src_address);
       radeon_emit(src_address >> 32);

Reply via email to