Skip to content

d3d12: split up root parameter update and set

Erik Faye-Lund requested to merge kusma/mesa:d3d12-descriptor-fix into main

SRV descriptors can require state-transitions before it's legal to set them on the command-list. We used to just set them right away, and get away with is, because the validator didn't verify this because we used to flag the parameters as volatile.

Now that we don't, we trigger validation errors when setting a root parameter that needs a transition first.

So let's split up the logic a bit, so we can prepare the tables, then do the transision, and finally set the tables. We do this for all tables instead of just the SRVs, just because it makes the logic a bit easier to follow. We leave root constants alone, because they will never require this, and doing them late would just compilcate things.

Fixes: 12082905 ("d3d12: Sets all SRV descriptors as data-static")

Merge request reports