Chia-I Wu
3831079fdf
vulkan/device_select: remove get_pdevice_proc_addr
...
It is optional and is needed only when a layer has physical device
extensions that may be unknown to the loader.
This simplifies the layer a bit, but more importantly, it works around a
bug in the loader when there is another layer in the layer chain that
wraps VkInstance.
Reviewed-by: Dave Airlie <airlied@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16307 >
2022-07-06 23:53:25 +00:00
Hans-Kristian Arntzen
0119de08f2
vulkan: Add common code for VK_EXT_shader_module_identifier.
...
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17332 >
2022-07-06 16:27:21 +00:00
Hans-Kristian Arntzen
6d66a43a70
vulkan: Update Vulkan XML and headers to 1.3.219.
...
Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17332 >
2022-07-06 16:27:21 +00:00
Jordan Justen
d5884a716f
vulkan/wsi: Disable dma-buf sync file if ENOSYS is returned
...
ENOSYS is commented as "Invalid system call number". This is returned
by qemu-user for unbridged ioctls.
Fixes: 30b57f10b3 ("vulkan/wsi: Signal semaphores and fences from the dma-buf")
Signed-off-by: Jordan Justen <jordan.l.justen@intel.com >
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17325 >
2022-07-01 10:28:34 +00:00
Jason Ekstrand
d06335ed76
vulkan: Depend on vk_pipeline_layout in vk_cmd_enqueue
...
Now that we have a common pipeline layout with reference counting, we
don't need these driver hooks for reference counting anymore.
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Jesse Natalie <jenatali@microsoft.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17286 >
2022-06-29 20:31:58 +00:00
Jason Ekstrand
e6c75bcd9c
vulkan: Add a common implementation of pipeline layouts
...
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Jesse Natalie <jenatali@microsoft.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17286 >
2022-06-29 20:31:57 +00:00
Jason Ekstrand
949ce92f05
vulkan: Add a base struct for descriptor set layouts
...
There's some tricky stuff in here with properly handling Vulkan
allocation scopes and reference counting. Probably best to do it once.
Also, this means that common code can now take references to descriptor
set layouts which seems useful.
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Jesse Natalie <jenatali@microsoft.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17286 >
2022-06-29 20:31:57 +00:00
Jason Ekstrand
d46db2e5a6
vulkan: Fix a comment
...
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Jesse Natalie <jenatali@microsoft.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17286 >
2022-06-29 20:31:57 +00:00
Jesse Natalie
d4f7f21fa5
vulkan_entrypoints_gen: For Windows ARM64EC, prefix symbols with '#'
...
Acked-by: Jason Ekstrand <jason.ekstrand@collabora.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17267 >
2022-06-29 01:18:19 +00:00
Boris Brezillon
542538cf02
vulkan: Add a vk_pipeline_hash_shader_stage() helper
...
All drivers implement some sort of shader hashing, but each of
them does it slightly differently. Let's provide a generic helper
to avoid new copies of the same logic and encourage new drivers
to use one of the already implemented function.
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17186 >
2022-06-28 09:07:32 +00:00
Jason Ekstrand
21374eb777
vulkan/render_pass: Support VkAttachmentSampleCountInfoAMD
...
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16953 >
2022-06-24 22:37:53 +00:00
Jason Ekstrand
541819b2d6
vulkan/render_pass: Allow for mixed sample counts
...
RADV supports VK_AMD_mixed_attachment_samples which does exactly what it
sounds like.
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16953 >
2022-06-24 22:37:53 +00:00
Jason Ekstrand
7e11cdc77a
vulkan/render_pass: Pass sample locations to barriers
...
This is required for depth/stencil images created with
VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT.
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16953 >
2022-06-24 22:37:53 +00:00
Jason Ekstrand
6216c59dbb
vulkan/render_pass: Use a special layout for self-dependencies
...
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Acked-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16953 >
2022-06-24 22:37:53 +00:00
Jason Ekstrand
3a204d5cf3
vulkan/render_pass: Add a better helper for render pass inheritance
...
Instead of making drivers dive into the render pass and framebuffer
themselves, provide a helper that constructs a VkRenderingInfo for a
render pass resume that they can use instead. This should reduce code
duplication between driver implementations of BeginRendering and
BeginCommandBuffer.
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16953 >
2022-06-24 22:37:53 +00:00
Jason Ekstrand
8ce7faab47
vulkan: Add a vk_pipeline_shader_stage_to_nir helper
...
This is similar to vk_shader_module_to_nir only it takes a
VkPipelineShaderStageCreateInfo and handles
VK_KHR_graphics_pipeline_library semantics for when a
VkShaderModuleCreateInfo is provided instead of an actual module.
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Acked-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17196 >
2022-06-23 15:41:00 +00:00
Jason Ekstrand
288c1c29fb
vulkan/nir: Make spirv_data const in vk_spirv_to_nir
...
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Acked-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17196 >
2022-06-23 15:41:00 +00:00
Jason Ekstrand
981cf8a41d
vulkan: Add some border color helpers
...
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/15359 >
2022-06-23 00:01:41 +00:00
Dave Airlie
d3e723fb77
wsi/x11: add xcb_put_image support for larger transfers.
...
This was noticed as a problem in the EGL code, just fixup wsi.
Cc: mesa-stable
Reviewed-by: Adam Jackson <ajax@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17155 >
2022-06-22 03:28:21 +00:00
Jason Ekstrand
64d074879b
vulkan/wsi: Use HAVE_LIBDRM to detect DRM instead of !_WIN32
...
Reviewed-by: Jordan Justen <jordan.l.justen@intel.com >
Acked-by: Danylo Piliaiev <dpiliaiev@igalia.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17170 >
2022-06-22 01:15:20 +00:00
Lionel Landwerlin
efc398c722
vulkan/wsi: fix crash with debug names on swapchain
...
If you set a name of on a swapchain object, because the base object
struct has not been initialized with a VkDevice,
vk_object_base_finish() will segfault when trying to free the object
name.
Signed-off-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Fixes: cb1e0db23e ("vulkan/wsi: Make wsi_swapchain inherit from vk_object_base")
Reviewed-by: Adam Jackson <ajax@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17165 >
2022-06-21 17:05:10 +00:00
Yonggang Luo
1173c0f33a
meson: Using get_argument_syntax as the --compiler_id option for gen_vs_module_defs.py
...
Signed-off-by: Yonggang Luo <luoyonggang@gmail.com >
Reviewed-by: Dylan Baker <dylan@pnwbakers.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17065 >
2022-06-16 19:59:58 +00:00
Jan Beich
78523eea2f
vulkan/wsi: treat EBADF as missing DMA_BUF_IOCTL_{EXPORT,IMPORT}_SYNC_FILE
...
FreeBSD supports DMA-BUF but not DMA_BUF_IOCTL_SYNC and similar yet.
As it returns EBADF instead of ENOTTY all consumers fail due to
VK_ERROR_OUT_OF_HOST_MEMORY.
Fixes: 30b57f10b3 ("vulkan/wsi: Signal semaphores and fences from the dma-buf")
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/17070 >
2022-06-16 02:33:23 +00:00
Boris Brezillon
b78d3ebe72
vulkan/util: Fill VkPhysicalDeviceIDProperties::deviceNodeMask
...
This field copy was missing in
vk_get_physical_device_core_1_1_property_ext().
Fixes: 19ff5019b7 ("vulkan: Add helpers for filling exts for core features and properties.")
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com >
Reviewed-by: Erik Faye-Lund <erik.faye-lund@collabora.com >
Reviewed-by: Jesse Natalie <jenatali@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16926 >
2022-06-14 22:44:42 +00:00
Erik Faye-Lund
2c43044507
vulkan/util: assume c11
...
Reviewed-by: Jesse Natalie <jenatali@microsoft.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16908 >
2022-06-14 15:08:37 +00:00
Renato Pereyra
2ef6b0aab1
Revert "wsi/x11: Avoid using xcb_wait_for_special_event in FIFO modes"
...
This reverts commit 44a20baeb8 .
Signed-off-by: Renato Pereyra <renatopereyra@chromium.org >
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org >
Reviewed-by: Adam Jackson <ajax@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16954 >
2022-06-13 17:58:46 +00:00
Renato Pereyra
ee587f202e
Revert "wsi/x11: Don't leak xcb_get_geometry_reply_t."
...
This reverts commit 24049b8771 .
Signed-off-by: Renato Pereyra <renatopereyra@chromium.org >
Reviewed-by: Yiwei Zhang <zzyiwei@chromium.org >
Reviewed-by: Adam Jackson <ajax@redhat.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16954 >
2022-06-13 17:58:46 +00:00
Jason Ekstrand
30b57f10b3
vulkan/wsi: Signal semaphores and fences from the dma-buf
...
Instead of attempting to signal based on the memory object, use the new
DMA_BUF_IOCTL_EXPORT_SYNC_FILE to get a sync_file for the dma-buf and
use that to signal the semaphore or fence. Because this happens before
we transfer ownership back to the driver, the resulting sync_file should
only contain dma_fences from the compositor and/or display and shouldn't
be mixed up with the driver in any way. This gives us a real semaphore
and fence (as opposed to the dummy objects we've used int the past)
without over-synchronization.
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4037 >
2022-06-10 01:33:12 +00:00
Jason Ekstrand
18bd05827d
vulkan/wsi: Set memory ownership after signaling fences and semaphores
...
This isn't a functional change today because the set of drivers which
use set_ownership and those that use signal_fence/semaphore_for_memory
are mutually exclusive. It's important for the next commit, though.
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4037 >
2022-06-10 01:33:12 +00:00
Jason Ekstrand
6930f08860
vulkan/wsi: Re-arrange QueueSubmit code in wsi_common_queue_present
...
Instead of treating the blit submit specially in the buffer_blit_queue
case, treat the dummy submit as special. This lets us keep all the
handling of special-queue blits together. It also means that the
wsi_memory_signal_submit_info gets chained into the final submit which
is what we want if we're to rely on it for implicit sync. If we chain
it into the dummy submit, we'll implicit sync on all work previous to
the blit but not the blit. This won't work if X11 or a Wayland
compositor is depending on that to synchronize the linear copy.
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4037 >
2022-06-10 01:33:12 +00:00
Jason Ekstrand
bee3d2e156
vulkan/wsi: Reset fences earlier in wsi_common_queue_present
...
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4037 >
2022-06-10 01:33:12 +00:00
Jason Ekstrand
d211f4891a
vulkan/wsi: Use a STACK_ARRAY for stage_flags
...
This avoids the heap allocation in the common case.
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4037 >
2022-06-10 01:33:12 +00:00
Jason Ekstrand
b03216de9c
wsi: Always signal semaphores and fences in wsi_common_acquire_next_image
...
If the driver wants to do something special, it can reset the semaphore
or fence again and re-signal it. Sure, that wastes a malloc/free but
this is the window-system path. It'll be fine.
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com >
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4037 >
2022-06-10 01:33:12 +00:00
Jason Ekstrand
e32892130f
vulkan/wsi: Fix a signal_semaphore_with_memory check
...
Reviewed-by: Iago Toral Quiroga <itoral@igalia.com >
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/4037 >
2022-06-10 01:33:12 +00:00
Georg Lehmann
d5d16a4f00
vulkan: Spec update to 1.3.217.
...
Signed-off-by: Georg Lehmann <dadschoorse@gmail.com >
Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12729 >
2022-06-09 23:39:43 +00:00
Konstantin Seurer
7c44cb6f5e
vulkan: Spec update to 1.3.216
...
Update the vulkan headers and xml to 1.3.216
including the spirv headers. The new spirv spec
added new OpAlias*INTEL ops, which we ignore in
vtn_gather_types_c.py.
Signed-off-by: Konstantin Seurer <konstantin.seurer@gmail.com >
Acked-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16430 >
2022-06-08 20:20:21 +00:00
Jason Ekstrand
c144030f7e
vulkan,radv: Steal some image offset/extent helpers from radv
...
Reviewed-by: Dave Airlie <airlied@redhat.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16873 >
2022-06-07 17:57:42 +00:00
Jason Ekstrand
80547e5379
vulkan: Add a helper for image<->buffer copies
...
Reviewed-by: Dave Airlie <airlied@redhat.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16873 >
2022-06-07 17:57:42 +00:00
Jason Ekstrand
ed0cd6f654
vulkan/format: Add a vk_format_get_aspect_format helper
...
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16873 >
2022-06-07 17:57:42 +00:00
Jason Ekstrand
69e4d39d18
vulkan,radv: Move vk_format_get_plane_format to common code
...
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16873 >
2022-06-07 17:57:42 +00:00
Jason Ekstrand
2c2b3e68e1
vulkan,anv: Move the image offset/extent sanitize helpers to common code
...
Reviewed-by: Dave Airlie <airlied@redhat.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16873 >
2022-06-07 17:57:41 +00:00
Erik Faye-Lund
6ed10a99bd
vulkan/device_select: remove needless c99_compat.h includes
...
Reviewed-by: Jesse Natalie <jenatali@microsoft.com >
Reviewed-by: Alyssa Rosenzweig <alyssa@collabora.com >
Reviewed-by: Eric Engestrom <eric@engestrom.ch >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16812 >
2022-06-02 13:09:16 +00:00
Jason Ekstrand
56b66abc0b
vulkan/runtime: Add min_lod to vk_image_view
...
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/14129 >
2022-05-31 13:42:28 +00:00
Konstantin Seurer
7f1e967c02
vulkan: Use the correct enum in vk_buffer
...
VkBufferCreateFlags is correct.
Fixes: f6ae21b ("vulkan: Add a base struct for buffers")
Signed-off-by: Konstantin Seurer <konstantin.seurer@gmail.com >
Reviewed-by: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl >
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com >
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16764 >
2022-05-30 17:43:58 +00:00
Jason Ekstrand
f6ae21b864
vulkan: Add a base struct for buffers
...
Reviewed-by: Alyssa Rosenzweig <alyssa.rosenzweig@collabora.com >
Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16607 >
2022-05-27 18:38:42 -05:00
Yogesh Mohan Marimuthu
1a8b03732f
vulkan/wsi: fix extra free if buffer_blit_queue
...
In wsi_destroy_image(), if buffer_blit_queue then
do not call extra free. This will fix assert in
debug release and accessing out of allocated memory.
Fixes:
7bd5aa111c
("vulkan/wsi: add a private transfer pool to exec the DRI_PRIME blit")
Signed-off-by: Yogesh Mohan Marimuthu <yogesh.mohanmarimuthu@amd.com >
Reviewed-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com >
Reviewed-by: Samuel Pitoiset's avatarSamuel Pitoiset <samuel.pitoiset@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16649 >
2022-05-27 09:19:15 +00:00
Yiwei Zhang
a19e1f338e
vulkan: remove the VkPhysicalDeviceMemoryProperties workaround
...
cts fix landed in vulkan-cts-1.2.5 while mesa CI has bumped once.
Signed-off-by: Yiwei Zhang <zzyiwei@chromium.org >
Reviewed-by: Jason Ekstrand <jason.ekstrand@collabora.com >
Reviewed-by: Chad Versace <chadversary@chromium.org >
Tested-by: Mark Janes <markjanes@swizzler.org >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16694 >
2022-05-24 23:35:28 +00:00
Jason Ekstrand
c24aa449d0
vulkan,anv,turnip: Add a common CmdBindVertexBuffers wrapper
...
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16611 >
2022-05-20 02:12:37 +00:00
Jason Ekstrand
8b13ee75ba
vulkan: Fall back to raw data objects when deserializing if ops == NULL
...
This can happen if an object is serialized whose object type isn't in
the pipeline cache import ops. In this case, we generate a raw data
object and plan to turn it into the right object type later.
Fixes: d35e78bb85 ("vulkan/pipeline_cache: Implement deserialize for raw objects")
Reviewed-by: Connor Abbott <cwabbott0@gmail.com >
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16584 >
2022-05-19 14:51:40 +00:00
Jason Ekstrand
d35e78bb85
vulkan/pipeline_cache: Implement deserialize for raw objects
...
When caching NIR, it's cached as a raw object because we cache the
serialized NIR. When it's then loaded from the disk cache later, we
fail to deserialize it because raw objects are a special case. There
are two callers of vk_pipeline_cache_object_deserialize(), one of which
has a special case for raw objects and the other is called only when
we've checked that it isn't a raw object. The special cases are
pointless; raw objects should deserialize themselves.
Fixes: 591da98779 ("vulkan: Add a common VkPipelineCache implementation")
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/16281 >
2022-05-18 04:43:10 +00:00