diff --git a/src/imagination/vulkan/winsys/pvrsrvkm/pvr_srv_bridge.c b/src/imagination/vulkan/winsys/pvrsrvkm/pvr_srv_bridge.c index 8d1d82594b2..7b549ddecb4 100644 --- a/src/imagination/vulkan/winsys/pvrsrvkm/pvr_srv_bridge.c +++ b/src/imagination/vulkan/winsys/pvrsrvkm/pvr_srv_bridge.c @@ -1028,6 +1028,10 @@ VkResult pvr_srv_rgx_submit_transfer2(int fd, &ret, sizeof(ret)); if (result || ret.error != PVR_SRV_OK) { + /* There is no 'retry' VkResult, so treat it as VK_NOT_READY instead. */ + if (result == PVR_SRV_ERROR_RETRY || ret.error == PVR_SRV_ERROR_RETRY) + return VK_NOT_READY; + return vk_bridge_err(VK_ERROR_OUT_OF_DEVICE_MEMORY, "PVR_SRV_BRIDGE_RGXTQ_RGXSUBMITTRANSFER2", ret);