svga: fix vertex buffer references in the hw state
authorCharmaine Lee <charmainel@vmware.com>
Tue, 3 May 2016 01:17:48 +0000 (18:17 -0700)
committerBrian Paul <brianp@vmware.com>
Thu, 23 Jun 2016 13:31:20 +0000 (07:31 -0600)
commit2b81e31d4488ada643560a640aa4c0f6372e9ca7
treec2d236dbac59cbe5dc7169cb636c1fb759570996
parenta1d74f5528f4bab6679fc08b1a25055336c85089
svga: fix vertex buffer references in the hw state

This patch fixes three issues with vertex buffer references:
(1) Instead of copy the vertex buffer resource handles to the hw state
    in the context structure, use pipe_resource_reference to properly
    reference the vertex buffer resources in the context.

(2) Make sure to unbind those unused vertex buffer resources.

(3) Force to rebind the vertex buffer resources at the first draw of each
    command buffer to make sure the vertex buffer resources are paged in.

Reviewed-by: Brian Paul <brianp@vmware.com>
src/gallium/drivers/svga/svga_context.c
src/gallium/drivers/svga/svga_context.h
src/gallium/drivers/svga/svga_draw.c
src/gallium/drivers/svga/svga_pipe_vertex.c