From: Kenneth Graunke Date: Wed, 5 Dec 2018 09:16:23 +0000 (-0800) Subject: iris: only get space for one offset in stream output targets X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=52baba80f3cfcd1862bc1e87c380746bfec056ca;p=mesa.git iris: only get space for one offset in stream output targets Target corresponds to a buffer, buffer only records one offset, not multiple. --- diff --git a/src/gallium/drivers/iris/iris_state.c b/src/gallium/drivers/iris/iris_state.c index 809f9717580..5012ffd996e 100644 --- a/src/gallium/drivers/iris/iris_state.c +++ b/src/gallium/drivers/iris/iris_state.c @@ -2529,7 +2529,7 @@ iris_create_stream_output_target(struct pipe_context *ctx, cso->base.buffer_size = buffer_size; cso->base.context = ctx; - upload_state(ctx->stream_uploader, &cso->offset, 4 * sizeof(uint32_t), 4); + upload_state(ctx->stream_uploader, &cso->offset, sizeof(uint32_t), 4); return &cso->base; } @@ -2618,7 +2618,7 @@ iris_set_stream_output_targets(struct pipe_context *ctx, sob.StreamOffset = offsets[i]; sob.StreamOutputBufferOffsetAddress = rw_bo(NULL, iris_resource_bo(tgt->offset.res)->gtt_offset + - tgt->offset.offset + i * sizeof(uint32_t)); + tgt->offset.offset); } }