diff options
author | Ilia Mirkin <[email protected]> | 2013-11-28 16:23:15 -0500 |
---|---|---|
committer | Maarten Lankhorst <[email protected]> | 2013-12-04 16:38:50 +0100 |
commit | 0e5bf8565106833e1a678ebdae81fdf1657391c9 (patch) | |
tree | eb6f1180b115eea5509ae29f4ed9801014097b5f /src/gallium/drivers/nouveau/nouveau_buffer.c | |
parent | ce6dd69697ae62d9336bbd4f5808bc4d75cdcc04 (diff) |
nv50: wait on the buf's fence before sticking it into pushbuf
This resolves some rendering issues in source games.
See https://bugs.freedesktop.org/show_bug.cgi?id=64323
Signed-off-by: Ilia Mirkin <[email protected]>
Cc: "9.2 10.0" <[email protected]>
Diffstat (limited to 'src/gallium/drivers/nouveau/nouveau_buffer.c')
-rw-r--r-- | src/gallium/drivers/nouveau/nouveau_buffer.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/gallium/drivers/nouveau/nouveau_buffer.c b/src/gallium/drivers/nouveau/nouveau_buffer.c index 3e0404983fe..95905a8776f 100644 --- a/src/gallium/drivers/nouveau/nouveau_buffer.c +++ b/src/gallium/drivers/nouveau/nouveau_buffer.c @@ -205,6 +205,9 @@ nouveau_transfer_write(struct nouveau_context *nv, struct nouveau_transfer *tx, base, size / 4, (const uint32_t *)data); else nv->push_data(nv, buf->bo, buf->offset + base, buf->domain, size, data); + + nouveau_fence_ref(nv->screen->fence.current, &buf->fence); + nouveau_fence_ref(nv->screen->fence.current, &buf->fence_wr); } |