0c2848f44a
The scenario of: * App binds multiple descriptor sets * App binds a pipeline that uses a subset of them * App binds a pipeline that uses more of them was broken. We were only copying the descriptors for the accessible subset before, but then clearing all dirty bits, so simply changing the pipeline wouldn't result in more descriptors being copied. When running not-bindless, the right thing to do is to copy *all* descriptors if we're copying any. When running bindless, each parameter is set separately, and more importantly, *can't* be set on the command list if the root signature can't access them. Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/22371>