diff --git a/.pick_status.json b/.pick_status.json index 2125ba50869..e4d250998da 100644 --- a/.pick_status.json +++ b/.pick_status.json @@ -2335,7 +2335,7 @@ "description": "anv: reset binary syncobj to be signaled before submission", "nominated": true, "nomination_type": 1, - "resolution": 0, + "resolution": 1, "master_sha": null, "because_sha": "829699ba632b2b78e4de372baf42ae01095158a7" }, diff --git a/src/intel/vulkan/anv_queue.c b/src/intel/vulkan/anv_queue.c index 1b0f7d732e2..3fcd1ea0f8c 100644 --- a/src/intel/vulkan/anv_queue.c +++ b/src/intel/vulkan/anv_queue.c @@ -1054,6 +1054,13 @@ anv_queue_submit(struct anv_queue *queue, break; case ANV_SEMAPHORE_TYPE_DRM_SYNCOBJ: { + /* + * Reset the content of the syncobj so it doesn't contain a + * previously signaled dma-fence, until one is added by EXECBUFFER by + * the submission thread. + */ + anv_gem_syncobj_reset(device, impl->syncobj); + result = anv_queue_submit_add_syncobj(submit, device, impl->syncobj, I915_EXEC_FENCE_SIGNAL, 0);