diff options
author | José Fonseca <[email protected]> | 2011-10-27 19:09:25 +0100 |
---|---|---|
committer | José Fonseca <[email protected]> | 2011-10-31 15:22:09 +0000 |
commit | 1e9d8934a1a56e888f07a3571038a3f9205a72ae (patch) | |
tree | 591ef7bb8913783c60f7323cc9cfa4a4242759a6 /src/gallium/drivers/svga/svga_draw.h | |
parent | c04b9d1d561cc3a1300e65bd410f33dfff6fe1e0 (diff) |
svga: Flush the hwtnl primitives before writing to buffers.
svga keeps a small queue of similar primitive draws in order to coalesce
them into a single draw primitive command.
But the buffers referred in primitives not yet emitted were being ignored
in the considerations to flush or not the context.
This fixes piglit vbo-map-remap, vbo-subdata-sync, vbo-subdata-zero, and
Seeker.
Based on investigation and patch from Brian Paul.
Reviewed-By: Brian Paul <[email protected]>
Diffstat (limited to 'src/gallium/drivers/svga/svga_draw.h')
-rw-r--r-- | src/gallium/drivers/svga/svga_draw.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/gallium/drivers/svga/svga_draw.h b/src/gallium/drivers/svga/svga_draw.h index 1dac17421e1..31bea524384 100644 --- a/src/gallium/drivers/svga/svga_draw.h +++ b/src/gallium/drivers/svga/svga_draw.h @@ -76,6 +76,10 @@ svga_hwtnl_draw_range_elements( struct svga_hwtnl *hwtnl, unsigned start, unsigned count ); +boolean +svga_hwtnl_is_buffer_referred( struct svga_hwtnl *hwtnl, + struct pipe_resource *buffer ); + enum pipe_error svga_hwtnl_flush( struct svga_hwtnl *hwtnl ); |