Skip to content

anv: use protected scratch buffers on Gfx12.5 in protected command buffers

What does this MR do and why?

This is something we completely missed on Gfx12.5+.

Those platforms don't have a scratch buffer pointer given with an offset/pointer but instead a surface state.

And so just like any other surface state, they must be protected for write operations when the HW is in protected mode.

To do this we create variants of all shader instructions and select the right one to emit when emitting the commands.

Many thanks to @ibriano for finding this.

Merge request reports