diff --git a/src/gallium/drivers/freedreno/freedreno_fence.c b/src/gallium/drivers/freedreno/freedreno_fence.c index c4e20226b58..e2602cb4112 100644 --- a/src/gallium/drivers/freedreno/freedreno_fence.c +++ b/src/gallium/drivers/freedreno/freedreno_fence.c @@ -136,6 +136,10 @@ void fd_fence_server_sync(struct pipe_context *pctx, fence_flush(fence); + /* if not an external fence, then nothing more to do without preemption: */ + if (fence->fence_fd == -1) + return; + if (sync_accumulate("freedreno", &batch->in_fence_fd, fence->fence_fd)) { /* error */ }