diff options
Diffstat (limited to 'src/gallium/drivers/iris')
-rw-r--r-- | src/gallium/drivers/iris/iris_batch.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/gallium/drivers/iris/iris_batch.c b/src/gallium/drivers/iris/iris_batch.c index e3e38b2c27d..a1fbd3e3183 100644 --- a/src/gallium/drivers/iris/iris_batch.c +++ b/src/gallium/drivers/iris/iris_batch.c @@ -321,6 +321,9 @@ iris_batch_emit(struct iris_batch *batch, const void *data, unsigned size) static void iris_finish_batch(struct iris_batch *batch) { + if (batch->bo == batch->exec_bos[0]) + batch->primary_batch_size = batch_bytes_used(batch); + // XXX: ISP DIS /* Emit MI_BATCH_BUFFER_END to finish our batch. Note that execbuf2 @@ -357,8 +360,7 @@ submit_batch(struct iris_batch *batch, int in_fence_fd, int *out_fence_fd) .buffers_ptr = (uintptr_t) batch->validation_list, .buffer_count = batch->exec_count, .batch_start_offset = 0, - .batch_len = batch->bo == batch->exec_bos[0] ? batch_bytes_used(batch) - : batch->primary_batch_size, + .batch_len = batch->primary_batch_size, .flags = batch->ring | I915_EXEC_NO_RELOC | I915_EXEC_BATCH_FIRST | |