summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJason Ekstrand <jason.ekstrand@collabora.com>2022-04-18 12:03:35 -0500
committerDylan Baker <dylan.c.baker@intel.com>2022-05-10 21:23:14 -0700
commit3830fb9769b4c767b6cfffe9da8240377f483d55 (patch)
tree19a28552b79d6e51819826b0268489621b686bd0
parent5b82328bbdb2ac179a7507f6ea1332da7c5139c6 (diff)
gallium/u_threaded_context: Use PIPE_MAX_SHADER_SAMPLER_VIEWS for sampler_buffers
Sampler views and samplers may not be the same limit; in fact one is 32 while the other is 128. The sampler_buffers field is tracking sampler views (yes, naming is confusing) so we should use the right limit. Fixes: e9c41b321488 ("gallium/u_threaded: add buffer lists - tracking of buffers referenced by tc") Reviewed-by: Marek Olšák <marek.olsak@amd.com> Reviewed-by: Karol Herbst <kherbst@redhat.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15988> (cherry picked from commit 620c5e9dd05c57c253fa1e56218e88fe7bd23d86)
-rw-r--r--.pick_status.json2
-rw-r--r--src/gallium/auxiliary/util/u_threaded_context.h2
2 files changed, 2 insertions, 2 deletions
diff --git a/.pick_status.json b/.pick_status.json
index 14e5dd73fe5..bdaa9be782b 100644
--- a/.pick_status.json
+++ b/.pick_status.json
@@ -589,7 +589,7 @@
"description": "gallium/u_threaded_context: Use PIPE_MAX_SHADER_SAMPLER_VIEWS for sampler_buffers",
"nominated": true,
"nomination_type": 1,
- "resolution": 0,
+ "resolution": 1,
"main_sha": null,
"because_sha": "e9c41b321488c23b7d8ec5744f68218bac753505"
},
diff --git a/src/gallium/auxiliary/util/u_threaded_context.h b/src/gallium/auxiliary/util/u_threaded_context.h
index 3b7ea7a2677..67d2d69d271 100644
--- a/src/gallium/auxiliary/util/u_threaded_context.h
+++ b/src/gallium/auxiliary/util/u_threaded_context.h
@@ -516,7 +516,7 @@ struct threaded_context {
uint32_t shader_buffers_writeable_mask[PIPE_SHADER_TYPES];
uint32_t image_buffers_writeable_mask[PIPE_SHADER_TYPES];
/* Don't use PIPE_MAX_SHADER_SAMPLER_VIEWS because it's too large. */
- uint32_t sampler_buffers[PIPE_SHADER_TYPES][PIPE_MAX_SAMPLERS];
+ uint32_t sampler_buffers[PIPE_SHADER_TYPES][PIPE_MAX_SHADER_SAMPLER_VIEWS];
struct tc_batch batch_slots[TC_MAX_BATCHES];
struct tc_buffer_list buffer_lists[TC_MAX_BUFFER_LISTS];