<html>
<head>
<base href="https://bugs.freedesktop.org/">
</head>
<body><table border="1" cellspacing="0" cellpadding="8">
<tr>
<th>Bug ID</th>
<td><a class="bz_bug_link
bz_status_NEW "
title="NEW - vkDestroySwapchain causes deadlock on Wayland compositor with X11"
href="https://bugs.freedesktop.org/show_bug.cgi?id=103538">103538</a>
</td>
</tr>
<tr>
<th>Summary</th>
<td>vkDestroySwapchain causes deadlock on Wayland compositor with X11
</td>
</tr>
<tr>
<th>Product</th>
<td>Mesa
</td>
</tr>
<tr>
<th>Version</th>
<td>git
</td>
</tr>
<tr>
<th>Hardware</th>
<td>Other
</td>
</tr>
<tr>
<th>OS</th>
<td>All
</td>
</tr>
<tr>
<th>Status</th>
<td>NEW
</td>
</tr>
<tr>
<th>Severity</th>
<td>normal
</td>
</tr>
<tr>
<th>Priority</th>
<td>medium
</td>
</tr>
<tr>
<th>Component</th>
<td>Drivers/Vulkan/radeon
</td>
</tr>
<tr>
<th>Assignee</th>
<td>mesa-dev@lists.freedesktop.org
</td>
</tr>
<tr>
<th>Reporter</th>
<td>maister@archlinux.us
</td>
</tr>
<tr>
<th>QA Contact</th>
<td>mesa-dev@lists.freedesktop.org
</td>
</tr></table>
<p>
<div>
<pre>When using the X11 backend in GLFW on RADV (and Anvil for that matter), when
tearing down the device, vkDestroySwapchain deadlocks while waiting for a
thread to complete execution. vkDeviceWaitIdle() has been called prior.
thread 1:
#0 0x00007ffff747743d in pthread_join () from /usr/lib/libpthread.so.0
#1 0x00007ffff4968fa0 in x11_swapchain_destroy (anv_chain=0x555556680b50,
pAllocator=0x55555654eac8) at wsi/wsi_common_x11.c:1088
#2 0x00007ffff4957cdc in radv_DestroySwapchainKHR (_device=0x55555654eac0,
_swapchain=0x555556680b50, pAllocator=0x0) at radv_wsi.c:418
#3 0x00007fffeee27eff in ?? () from /usr/lib/libVkLayer_unique_objects.so
thread 2:
#0 0x00007ffff747c38d in pthread_cond_wait@@GLIBC_2.3.2 () from
/usr/lib/libpthread.so.0
#1 0x00007ffff4a48b90 in cnd_wait (cond=0x5555564bdd18, mtx=0x5555564bdcf0) at
../../include/c11/threads_posix.h:159
#2 0x00007ffff4a49283 in util_queue_thread_func (input=0x5555564be310) at
u_queue.c:171
#3 0x00007ffff4a48aa5 in impl_thrd_routine (p=0x5555564be330) at
../../include/c11/threads_posix.h:87
#4 0x00007ffff747608a in start_thread () from /usr/lib/libpthread.so.0
#5 0x00007ffff68c424f in clone () from /usr/lib/libc.so.6
thread 3:
#0 0x00007ffff68b9d4b in poll () from /usr/lib/libc.so.6
#1 0x00007ffff65b18e0 in ?? () from /usr/lib/libxcb.so.1
#2 0x00007ffff65b3779 in xcb_wait_for_special_event () from
/usr/lib/libxcb.so.1
#3 0x00007ffff4968a14 in x11_manage_fifo_queues (state=0x555556680b50) at
wsi/wsi_common_x11.c:936
#4 0x00007ffff747608a in start_thread () from /usr/lib/libpthread.so.0
#5 0x00007ffff68c424f in clone () from /usr/lib/libc.so.6</pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are the assignee for the bug.</li>
<li>You are the QA Contact for the bug.</li>
</ul>
</body>
</html>