mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-04 22:49:13 +02:00
radv: don't remove the blit queue from the device queues
I don't remember why I implemented it like this in !13959, but AFAICT there's no need to manually remove this queue from vk_device's queues list. On the other hand, this hack causes issues if syncobj timeline isn't supported; amdgpu always support timeline, but amdgpu over virtio-gpu doesn't. The issue is as follow: the sequence in vk_queue.c: case VK_QUEUE_SUBMIT_MODE_DEFERRED: vk_queue_push_submit(queue, submit); return vk_device_flush(queue->base.device); Would fail to produce the expected result, because vk_device_flush would fail to realize that the blit queue has some pending work because "vk_foreach_queue(queue, device)" would never process the queue. Then, the call to vk_drm_syncobj_export_sync_file() would fail, because the syncobj handle was never used in a submit. Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27412>
This commit is contained in:
parent
716ed7d62a
commit
6c3a294eef
1 changed files with 0 additions and 4 deletions
|
|
@ -73,10 +73,6 @@ radv_wsi_get_prime_blit_queue(VkDevice _device)
|
|||
|
||||
VkResult result = radv_queue_init(device, device->private_sdma_queue, 0, &queue_create, NULL);
|
||||
if (result == VK_SUCCESS) {
|
||||
/* Remove the queue from our queue list because it'll be cleared manually
|
||||
* in radv_DestroyDevice.
|
||||
*/
|
||||
list_delinit(&device->private_sdma_queue->vk.link);
|
||||
return vk_queue_to_handle(&device->private_sdma_queue->vk);
|
||||
} else {
|
||||
vk_free(&device->vk.alloc, device->private_sdma_queue);
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue