commit 3b28251c65e072f826d29a72f40d5f1f1f2bd25a Author: Emil Velikov Date: Sun Dec 1 13:03:00 2013 +0000 XXXnouveau: mess around with buffer transfers only when needed By Ilia Mirkin Signed-off-by: Emil Velikov diff --git a/src/gallium/drivers/nouveau/nouveau_buffer.c b/src/gallium/drivers/nouveau/nouveau_buffer.c index 3e04049..3d7f8ec 100644 --- a/src/gallium/drivers/nouveau/nouveau_buffer.c +++ b/src/gallium/drivers/nouveau/nouveau_buffer.c @@ -393,7 +393,7 @@ nouveau_buffer_transfer_map(struct pipe_context *pipe, if ((usage & PIPE_TRANSFER_UNSYNCHRONIZED) || !buf->mm) return map; - if (nouveau_buffer_busy(buf, usage & PIPE_TRANSFER_READ_WRITE)) { + if ((usage & PIPE_TRANSFER_READ) && nouveau_buffer_busy(buf, usage & PIPE_TRANSFER_READ_WRITE)) { if (unlikely(usage & PIPE_TRANSFER_DISCARD_WHOLE_RESOURCE)) { /* Discarding was not possible, must sync because * subsequent transfers might use UNSYNCHRONIZED. */