diff options
author | Kenneth Graunke <[email protected]> | 2019-03-18 00:18:32 -0700 |
---|---|---|
committer | Kenneth Graunke <[email protected]> | 2019-03-18 01:02:18 -0700 |
commit | 836b47ca4e867f4df80e1559b4c9be2c881356ca (patch) | |
tree | e57ed5b5e922938062ee38dacb4e6ef80655b4db /src | |
parent | a1cd0040b6d1ae3dbf9d792c5ab1aadbbf917bac (diff) |
iris: Don't flush the batch for unsynchronized mappings
I messed this up when adding the GPU copy path.
Diffstat (limited to 'src')
-rw-r--r-- | src/gallium/drivers/iris/iris_resource.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/gallium/drivers/iris/iris_resource.c b/src/gallium/drivers/iris/iris_resource.c index 78a6d15ed72..e0824723676 100644 --- a/src/gallium/drivers/iris/iris_resource.c +++ b/src/gallium/drivers/iris/iris_resource.c @@ -1256,9 +1256,11 @@ iris_transfer_map(struct pipe_context *ctx, iris_map_copy_region(map); } else { /* Otherwise we're free to map on the CPU. Flush if needed. */ - for (int i = 0; i < IRIS_BATCH_COUNT; i++) { - if (iris_batch_references(&ice->batches[i], res->bo)) - iris_batch_flush(&ice->batches[i]); + if (!(usage & PIPE_TRANSFER_UNSYNCHRONIZED)) { + for (int i = 0; i < IRIS_BATCH_COUNT; i++) { + if (iris_batch_references(&ice->batches[i], res->bo)) + iris_batch_flush(&ice->batches[i]); + } } if (surf->tiling == ISL_TILING_W) { |