summaryrefslogtreecommitdiffstats
path: root/src/gallium/state_trackers/nine/indexbuffer9.c
diff options
context:
space:
mode:
authorAxel Davy <[email protected]>2016-11-03 23:37:46 +0100
committerAxel Davy <[email protected]>2016-12-20 23:44:23 +0100
commit22f6d6fbd270333979c282627349eb74c06acd6b (patch)
treeb9d19d6dd8397b859fc817dd573a47eb7247fb78 /src/gallium/state_trackers/nine/indexbuffer9.c
parent3e8234fff42022b12ff7bdbff052c75c71f5bedb (diff)
st/nine: Implement Fast path for dynamic buffers and csmt
Use the secondary pipe for DISCARD/NOOVERWRITE, which avoids stalling to get the pipe from the worker thread. v2: flush at unmap. This is required for example if the driver does hidden draw calls or copies. In the case of unsynchronized it is probably not required, but it is more safe. Signed-off-by: Axel Davy <[email protected]>
Diffstat (limited to 'src/gallium/state_trackers/nine/indexbuffer9.c')
-rw-r--r--src/gallium/state_trackers/nine/indexbuffer9.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/gallium/state_trackers/nine/indexbuffer9.c b/src/gallium/state_trackers/nine/indexbuffer9.c
index 4e65ed7bc08..4029a8d6a3a 100644
--- a/src/gallium/state_trackers/nine/indexbuffer9.c
+++ b/src/gallium/state_trackers/nine/indexbuffer9.c
@@ -76,6 +76,8 @@ NineIndexBuffer9_dtor( struct NineIndexBuffer9 *This )
const struct pipe_index_buffer *
NineIndexBuffer9_GetBuffer( struct NineIndexBuffer9 *This )
{
+ /* The resource may change */
+ This->buffer.buffer = NineIndexBuffer9_GetResource(This);
return &This->buffer;
}