From 2fc31a4d28f74b197743110b656334044cd5ac49 Mon Sep 17 00:00:00 2001 From: Iago Toral Quiroga Date: Fri, 13 Mar 2020 11:48:17 +0100 Subject: [PATCH] v3dv: return OOM error if we fail to import or export sync objects Typically, these functions would error out if we exceed the user limit for open file descriptors, so this seems more appropriate. Part-of: --- src/broadcom/vulkan/v3dv_queue.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/broadcom/vulkan/v3dv_queue.c b/src/broadcom/vulkan/v3dv_queue.c index 3cfaedeaf3d..d59d674b7cc 100644 --- a/src/broadcom/vulkan/v3dv_queue.c +++ b/src/broadcom/vulkan/v3dv_queue.c @@ -86,7 +86,7 @@ process_semaphores_to_signal(struct v3dv_device *device, int fd; drmSyncobjExportSyncFile(device->render_fd, device->last_job_sync, &fd); if (fd == -1) - return VK_ERROR_DEVICE_LOST; + return VK_ERROR_OUT_OF_HOST_MEMORY; for (uint32_t i = 0; i < count; i++) { struct v3dv_semaphore *sem = v3dv_semaphore_from_handle(sems[i]); @@ -97,7 +97,7 @@ process_semaphores_to_signal(struct v3dv_device *device, int ret = drmSyncobjImportSyncFile(device->render_fd, sem->sync, fd); if (ret) - return VK_ERROR_DEVICE_LOST; + return VK_ERROR_OUT_OF_HOST_MEMORY; sem->fd = fd; } @@ -120,11 +120,11 @@ process_fence_to_signal(struct v3dv_device *device, VkFence _fence) int fd; drmSyncobjExportSyncFile(device->render_fd, device->last_job_sync, &fd); if (fd == -1) - return VK_ERROR_DEVICE_LOST; + return VK_ERROR_OUT_OF_HOST_MEMORY; int ret = drmSyncobjImportSyncFile(device->render_fd, fence->sync, fd); if (ret) - return VK_ERROR_DEVICE_LOST; + return VK_ERROR_OUT_OF_HOST_MEMORY; fence->fd = fd;