Mesa (master): freedreno: update valid_buffer_range for SO buffers

Rob Clark robclark at kemper.freedesktop.org
Sat Jul 2 13:20:01 UTC 2016


Module: Mesa
Branch: master
Commit: 1759eb1d197e9794cd43ef86261372da719f4f2b
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=1759eb1d197e9794cd43ef86261372da719f4f2b

Author: Rob Clark <robdclark at gmail.com>
Date:   Thu Jun 30 22:52:23 2016 -0400

freedreno: update valid_buffer_range for SO buffers

Signed-off-by: Rob Clark <robdclark at gmail.com>

---

 src/gallium/drivers/freedreno/freedreno_state.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/src/gallium/drivers/freedreno/freedreno_state.c b/src/gallium/drivers/freedreno/freedreno_state.c
index 53ea39b..252d153 100644
--- a/src/gallium/drivers/freedreno/freedreno_state.c
+++ b/src/gallium/drivers/freedreno/freedreno_state.c
@@ -316,6 +316,7 @@ fd_create_stream_output_target(struct pipe_context *pctx,
 		unsigned buffer_size)
 {
 	struct pipe_stream_output_target *target;
+	struct fd_resource *rsc = fd_resource(prsc);
 
 	target = CALLOC_STRUCT(pipe_stream_output_target);
 	if (!target)
@@ -328,6 +329,10 @@ fd_create_stream_output_target(struct pipe_context *pctx,
 	target->buffer_offset = buffer_offset;
 	target->buffer_size = buffer_size;
 
+	assert(rsc->base.b.target == PIPE_BUFFER);
+	util_range_add(&rsc->valid_buffer_range,
+		buffer_offset, buffer_offset + buffer_size);
+
 	return target;
 }
 




More information about the mesa-commit mailing list