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

Author: Marek Olšák <[email protected]>
Date:   Mon Oct 10 17:18:52 2022 -0400

radeonsi: fix max_dw computation for CS preambles

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

---

 src/gallium/drivers/radeonsi/si_cp_reg_shadowing.c | 2 +-
 src/gallium/drivers/radeonsi/si_state.c            | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/gallium/drivers/radeonsi/si_cp_reg_shadowing.c 
b/src/gallium/drivers/radeonsi/si_cp_reg_shadowing.c
index 48b36b67a8e..d58b9a90bb9 100644
--- a/src/gallium/drivers/radeonsi/si_cp_reg_shadowing.c
+++ b/src/gallium/drivers/radeonsi/si_cp_reg_shadowing.c
@@ -75,7 +75,7 @@ si_create_shadowing_ib_preamble(struct si_context *sctx)
    struct si_pm4_state *pm4 = (struct si_pm4_state 
*)CALLOC_STRUCT(si_shadow_preamble);
 
    /* Add all the space that we allocated. */
-   pm4->max_dw = sizeof(struct si_shadow_preamble) - offsetof(struct 
si_shadow_preamble, pm4.pm4);
+   pm4->max_dw = (sizeof(struct si_shadow_preamble) - offsetof(struct 
si_shadow_preamble, pm4.pm4)) / 4;
 
    if (sctx->screen->dpbb_allowed) {
       si_pm4_cmd_add(pm4, PKT3(PKT3_EVENT_WRITE, 0, 0));
diff --git a/src/gallium/drivers/radeonsi/si_state.c 
b/src/gallium/drivers/radeonsi/si_state.c
index 664c802341d..3219891b4f4 100644
--- a/src/gallium/drivers/radeonsi/si_state.c
+++ b/src/gallium/drivers/radeonsi/si_state.c
@@ -5553,7 +5553,7 @@ void si_init_cs_preamble_state(struct si_context *sctx, 
bool uses_reg_shadowing)
       return;
 
    /* Add all the space that we allocated. */
-   pm4->max_dw = sizeof(struct si_cs_preamble) - offsetof(struct 
si_cs_preamble, pm4.pm4);
+   pm4->max_dw = (sizeof(struct si_cs_preamble) - offsetof(struct 
si_cs_preamble, pm4.pm4)) / 4;
 
    if (!uses_reg_shadowing) {
       si_pm4_cmd_add(pm4, PKT3(PKT3_CONTEXT_CONTROL, 1, 0));

Reply via email to