From bb324182fc7cd9cfaa62ee44bdd9287f1ed2ac7a Mon Sep 17 00:00:00 2001 From: Dave Airlie Date: Sun, 21 Mar 2010 19:36:15 +1000 Subject: r300g: fix occlusion query hangs. Okay need to revist the whole OQ stuff anyways, glean test asserts which is never good. I'm liking the cached bufmgr restrictions less and less, I think I'll probably play with the fence and/or busy stuff ASAP and try and clean it up. Signed-off-by: Dave Airlie --- src/gallium/winsys/drm/radeon/core/radeon_drm_buffer.c | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) (limited to 'src/gallium/winsys/drm') diff --git a/src/gallium/winsys/drm/radeon/core/radeon_drm_buffer.c b/src/gallium/winsys/drm/radeon/core/radeon_drm_buffer.c index 1d29b0b727..a8a7c45a96 100644 --- a/src/gallium/winsys/drm/radeon/core/radeon_drm_buffer.c +++ b/src/gallium/winsys/drm/radeon/core/radeon_drm_buffer.c @@ -73,8 +73,10 @@ radeon_drm_buffer_map(struct pb_buffer *_buf, int write; if (flags & PIPE_BUFFER_USAGE_DONTBLOCK) { - if (radeon_bo_is_referenced_by_cs(buf->bo, buf->mgr->rws->cs)) - return NULL; + if ((_buf->base.usage & PIPE_BUFFER_USAGE_VERTEX) || + (_buf->base.usage & PIPE_BUFFER_USAGE_INDEX)) + if (radeon_bo_is_referenced_by_cs(buf->bo, buf->mgr->rws->cs)) + return NULL; } if (buf->bo->ptr != NULL) -- cgit v1.2.3