summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorKenneth Graunke <[email protected]>2019-03-18 00:18:32 -0700
committerKenneth Graunke <[email protected]>2019-03-18 01:02:18 -0700
commit836b47ca4e867f4df80e1559b4c9be2c881356ca (patch)
treee57ed5b5e922938062ee38dacb4e6ef80655b4db /src
parenta1cd0040b6d1ae3dbf9d792c5ab1aadbbf917bac (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.c8
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) {