Mesa (staging/22.0): tu: Fix indices of drm_msm_gem_submit_cmd when filling them

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Fri May 13 17:04:17 UTC 2022


Module: Mesa
Branch: staging/22.0
Commit: 8ac7c858fd5c2b94d6241f3451e4df87a600ad13
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=8ac7c858fd5c2b94d6241f3451e4df87a600ad13

Author: Danylo Piliaiev <dpiliaiev at igalia.com>
Date:   Thu May 12 15:47:58 2022 +0300

tu: Fix indices of drm_msm_gem_submit_cmd when filling them

For some reason CTS doesn't trigger the issue...
When submit entry is not filled - kernel says:
 [drm:msm_ioctl_gem_submit] *ERROR* invalid type: 00000000

Fixes: dbae9fa7d8412252c96e53ef3d50f4349969928a
("tu: implement sysmem vs gmem autotuner")

Signed-off-by: Danylo Piliaiev <dpiliaiev at igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16474>
(cherry picked from commit 9a11ad7efd56d28e1c83aaec5cecb7fa7720fc90)

---

 .pick_status.json             | 2 +-
 src/freedreno/vulkan/tu_drm.c | 2 ++
 2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/.pick_status.json b/.pick_status.json
index 820b2d404df..c4914e28730 100644
--- a/.pick_status.json
+++ b/.pick_status.json
@@ -388,7 +388,7 @@
         "description": "tu: Fix indices of drm_msm_gem_submit_cmd when filling them",
         "nominated": true,
         "nomination_type": 1,
-        "resolution": 0,
+        "resolution": 1,
         "because_sha": "dbae9fa7d8412252c96e53ef3d50f4349969928a"
     },
     {
diff --git a/src/freedreno/vulkan/tu_drm.c b/src/freedreno/vulkan/tu_drm.c
index 150cbe97612..85c59bcc85b 100644
--- a/src/freedreno/vulkan/tu_drm.c
+++ b/src/freedreno/vulkan/tu_drm.c
@@ -862,6 +862,7 @@ tu_queue_build_msm_gem_submit_cmds(struct tu_queue *queue,
             &dev->perfcntrs_pass_cs_entries[submit->perf_pass_index];
 
          tu_fill_msm_gem_submit(dev, &cmds[entry_idx], perf_cs_entry);
+         entry_idx++;
       }
 
       for (unsigned i = 0; i < cs->entry_count; ++i, ++entry_idx) {
@@ -873,6 +874,7 @@ tu_queue_build_msm_gem_submit_cmds(struct tu_queue *queue,
             submit->u_trace_submission_data->cmd_trace_data[j].timestamp_copy_cs;
          if (ts_cs) {
             tu_fill_msm_gem_submit(dev, &cmds[entry_idx], &ts_cs->entries[0]);
+            entry_idx++;
          }
       }
    }



More information about the mesa-commit mailing list