mesa/src/vulkan/wsi
Leandro Ribeiro ba571c3657 vulkan/wsi/wayland: take ownership of wsi_wl_surface when creating chain
When we create a swapchain, take ownership of a struct wsi_wl_surface.
When the chain gets destroyed, the ownership is dropped.

We can safely do that because only a single swapchain can be associated
with the surface at a time, according to vkCreateSwapchainKHR spec:

  "If pCreateInfo->oldSwapchain is VK_NULL_HANDLE, and the native
   window referred to by pCreateInfo->surface is already associated
   with a Vulkan swapchain, VK_ERROR_NATIVE_WINDOW_IN_USE_KHR must
   be returned."

Reviewed-by: Simon Ser <contact@emersion.fr>
Signed-off-by: Leandro Ribeiro <leandro.ribeiro@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12226>
2022-10-21 12:15:37 +00:00
..
meson.build vulkan/wsi: Add dep_libudev to idep dependencies 2022-10-14 21:10:29 +00:00
wsi_common.c vulkan/wsi/wayland: introduce struct wsi_wl_surface 2022-10-21 12:15:37 +00:00
wsi_common.h vulkan/wsi: Add a supports_scanout flag 2022-09-28 21:35:12 +00:00
wsi_common_display.c vulkan/wsi: Always configure images in wsi_swapchain_init() 2022-09-28 21:35:12 +00:00
wsi_common_display.h vulkan/wsi/display: Wrap wsi_display_fence in a vk_sync 2021-11-16 10:54:27 -06:00
wsi_common_drm.c vulkan/wsi: Add a supports_scanout flag 2022-09-28 21:35:12 +00:00
wsi_common_drm.h vulkan/wsi: create a common function to compare drm devices 2022-01-14 12:19:57 +00:00
wsi_common_private.h vulkan/wsi/wayland: introduce struct wsi_wl_surface 2022-10-21 12:15:37 +00:00
wsi_common_queue.h util/vector: make util_vector_init harder to misuse 2021-10-08 00:15:11 +00:00
wsi_common_wayland.c vulkan/wsi/wayland: take ownership of wsi_wl_surface when creating chain 2022-10-21 12:15:37 +00:00
wsi_common_win32.c vulkan/wsi: Always configure images in wsi_swapchain_init() 2022-09-28 21:35:12 +00:00
wsi_common_x11.c vulkan/wsi/x11: Fix double free of modifiers. 2022-09-30 23:39:25 +00:00