mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-07 20:08:06 +02:00
v3d: Primitive Counts Feedback needs an extra 32-bit padding.
Store Primitive Counts operations write 7 counters in 32-bit words
but also a padding 32-bit with 0. So we need 8 32-bit words instead
of the current 7 allocated.
This was causing an corruption in the next buffer when Transform
Feedback was enabled that were exposed on tests like:
dEQP-GLES3.functional.transform_feedback.*.points.*
This patch fixes 196 tests that were failing when they were run isolated
but they were passing when run using cts-runner.
Fixes: 0f2d1dfe65 ("v3d: use the GPU to record primitives written to transform feedback")
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/2674
Reviewed-by: Alejandro Piñeiro <apinheiro@igalia.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4501>
This commit is contained in:
parent
38622de2ec
commit
b06fdb8edd
1 changed files with 2 additions and 1 deletions
|
|
@ -1250,7 +1250,8 @@ v3d_set_stream_output_targets(struct pipe_context *pctx,
|
|||
|
||||
/* Create primitive counters BO if needed */
|
||||
if (num_targets > 0 && !ctx->prim_counts) {
|
||||
uint32_t zeroes[7] = { 0 }; /* Init all 7 counters to 0 */
|
||||
/* Init all 7 counters and 1 padding to 0 */
|
||||
uint32_t zeroes[8] = { 0 };
|
||||
u_upload_data(ctx->uploader,
|
||||
0, sizeof(zeroes), 32, zeroes,
|
||||
&ctx->prim_counts_offset,
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue