zink: barrier rework part 2

Mike Blumenkrantz requested to merge zmike/mesa:zink-barrier into main

now that all the easy optimizations are out of the way, it's time to get serious.

by expanding the existing copy box infrastructure to handle buffers, it becomes possible to eliminate a lot of transfer barriers for non-intersecting reads/writes

the exception to this is on turnip, which does not allow any fun (nonconformant cache behavior cf. https://gitlab.khronos.org/vulkan/vulkan/-/issues/3398 https://gitlab.khronos.org/vulkan/vulkan/-/issues/3306), and so a new driver workaround has been added to disable this functionality there to avoid cache issues

Merge request reports