vkr: add multiple timeline support

Passes light testing in VM with Vk gameplay. I'll update next week with more exhaustive testing conclusions.

See mesa/mesa!19691 (merged) for summary of changes

Remaining TODOs:

  • update venus-protocol header with landed commit hash after merging olv/venus-protocol!54.
  • Support all fence retire methods on CPU timelines (currently only async_fence_cb is supported). (edit: all fence retire methods are tested and working with CPU and VkQueue sync_queue types).
  • Support configurable timelines with vtest.
Edited by Ryan Neph

Merge request reports