mesa/src/virtio
Juston Li e48645250c venus: image format properties cache
Cache for vkGetPhysicalDeviceImageFormatProperties2 as it is observed
to be called repeatedly with zink/proton layers.

Cache design is the same as the image requirements cache, generating
a hash key from pImageFormatInfo and storing pImageFormatProperties
into a hash table.

There are a couple differences though:
- VkResult gets cached when the query returns NOT_SUPPORTED.
- Unlike pMemoryRequirements that returns VkMemoryRequirements2 and
possibly VkMemoryDedicatedRequirements, VkImageFormatProperties2
has various pNext chains that can be optionally passed in. Hash
the existence of these pNext so that they are considered different
queries and the underlying pNext struct can be optionally cached.
The alternative would be to modify the query to always chain these
pNext so all of them would be cached, but it is unlikely for queries
to only differ in pNext chains.

Signed-off-by: Juston Li <justonli@google.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27401>
2024-02-06 00:26:45 +00:00
..
ci Uprev Piglit to e9316bcd12544aaf7e753ce37fe50d64165d9598 2024-01-29 18:27:07 +00:00
vdrm virtio/vdrm: Fix lockup in vdrm_host_sync() 2024-01-12 16:53:59 +00:00
venus-protocol venus: switch to vn_ring as the protocol interface - part 3 2023-12-08 04:06:37 +00:00
virtio-gpu virgl: Use better reporting for mirror_clamp features 2024-01-29 09:01:26 +00:00
vtest venus: rename sync_queue -> timeline 2022-12-16 21:12:38 +00:00
vulkan venus: image format properties cache 2024-02-06 00:26:45 +00:00
meson.build virtio: Add vdrm native-context helper 2023-11-04 03:00:04 +00:00