nvk: SET_STATISTICS_COUNTER at start of meta_begin

Ideally, begin/end should be roughly symmetric - the initialization
order should be the reverse of the teardown order.

Fixes: 6f85e6b06b ("nvk: Disable statistics around meta ops")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/34644>
This commit is contained in:
Mel Henning 2025-04-21 16:08:24 -04:00 committed by Marge Bot
parent 1bf8542490
commit 52085f2a0e

View file

@ -78,6 +78,25 @@ nvk_meta_begin(struct nvk_cmd_buffer *cmd,
{ {
const struct nvk_descriptor_state *desc = &cmd->state.gfx.descriptors; const struct nvk_descriptor_state *desc = &cmd->state.gfx.descriptors;
struct nv_push *p = nvk_cmd_buffer_push(cmd, 2);
P_IMMD(p, NV9097, SET_STATISTICS_COUNTER, {
.da_vertices_generated_enable = false,
.da_primitives_generated_enable = false,
.vs_invocations_enable = false,
.gs_invocations_enable = false,
.gs_primitives_generated_enable = false,
.streaming_primitives_succeeded_enable = false,
.streaming_primitives_needed_enable = false,
.clipper_invocations_enable = false,
.clipper_primitives_generated_enable = false,
.ps_invocations_enable = false,
.ti_invocations_enable = false,
.ts_invocations_enable = false,
.ts_primitives_generated_enable = false,
.total_streaming_primitives_needed_succeeded_enable = false,
.vtg_primitives_out_enable = false,
});
save->dynamic = cmd->vk.dynamic_graphics_state; save->dynamic = cmd->vk.dynamic_graphics_state;
save->_dynamic_vi = cmd->state.gfx._dynamic_vi; save->_dynamic_vi = cmd->state.gfx._dynamic_vi;
save->_dynamic_sl = cmd->state.gfx._dynamic_sl; save->_dynamic_sl = cmd->state.gfx._dynamic_sl;
@ -97,25 +116,6 @@ nvk_meta_begin(struct nvk_cmd_buffer *cmd,
save->set_dynamic_buffer_start); save->set_dynamic_buffer_start);
nvk_descriptor_state_get_root_array(desc, push, 0, NVK_MAX_PUSH_SIZE, nvk_descriptor_state_get_root_array(desc, push, 0, NVK_MAX_PUSH_SIZE,
save->push); save->push);
struct nv_push *p = nvk_cmd_buffer_push(cmd, 2);
P_IMMD(p, NV9097, SET_STATISTICS_COUNTER, {
.da_vertices_generated_enable = false,
.da_primitives_generated_enable = false,
.vs_invocations_enable = false,
.gs_invocations_enable = false,
.gs_primitives_generated_enable = false,
.streaming_primitives_succeeded_enable = false,
.streaming_primitives_needed_enable = false,
.clipper_invocations_enable = false,
.clipper_primitives_generated_enable = false,
.ps_invocations_enable = false,
.ti_invocations_enable = false,
.ts_invocations_enable = false,
.ts_primitives_generated_enable = false,
.total_streaming_primitives_needed_succeeded_enable = false,
.vtg_primitives_out_enable = false,
});
} }
static void static void