Commit e4b66722 authored by Michel Dänzer's avatar Michel Dänzer Committed by Juan A. Suárez
Browse files

loader/dri3: Only wait for back buffer fences in dri3_get_buffer

We don't need to wait before drawing to the fake front buffer, as front
buffer rendering by definition is allowed to produce artifacts.

Fixes hangs in some cases when re-using the fake front buffer, due to it
still being busy (i.e. in use for presentation).

Cc: mesa-stable@lists.freedesktop.org
Bugzilla: https://bugs.freedesktop.org/106404
Bugzilla: https://bugs.freedesktop.org/107757

Tested-by: default avatarOlivier Fourdan <ofourdan@redhat.com>
Reviewed-by: default avatarThomas Hellstrom <thellstrom@vmware.com>
(cherry picked from commit aefac10f)
parent 4fe3ce2a
......@@ -1819,7 +1819,9 @@ dri3_get_buffer(__DRIdrawable *driDrawable,
buffer = new_buffer;
draw->buffers[buf_id] = buffer;
}
dri3_fence_await(draw->conn, draw, buffer);
if (buffer_type == loader_dri3_buffer_back)
dri3_fence_await(draw->conn, draw, buffer);
/*
* Do we need to preserve the content of a previous buffer?
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment