diff options
author | Kenneth Graunke <[email protected]> | 2018-12-08 02:01:19 -0800 |
---|---|---|
committer | Kenneth Graunke <[email protected]> | 2019-02-21 10:26:12 -0800 |
commit | c53a67d4693745e52127b9ea027ecbf9e87ae639 (patch) | |
tree | 9dbb90699848f9c49c0d303981bf21b583056def | |
parent | 5eb75345b88be246474a4f26d6f7a99575f94461 (diff) |
iris: be sure to skip buffers in resolve code
Buffers don't have ISL surfaces, and this can get us into trouble.
-rw-r--r-- | src/gallium/drivers/iris/iris_resolve.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/gallium/drivers/iris/iris_resolve.c b/src/gallium/drivers/iris/iris_resolve.c index aedc12f125b..eb8552a3aca 100644 --- a/src/gallium/drivers/iris/iris_resolve.c +++ b/src/gallium/drivers/iris/iris_resolve.c @@ -94,6 +94,9 @@ resolve_sampler_views(struct iris_context *ice, struct iris_sampler_view *isv = shs->textures[i]; struct iris_resource *res = (void *) isv->base.texture; + if (res->base.target == PIPE_BUFFER) + continue; + if (batch->name != IRIS_BATCH_COMPUTE) { disable_rb_aux_buffer(ice, draw_aux_buffer_disabled, res, isv->view.base_level, isv->view.levels, @@ -122,6 +125,9 @@ resolve_image_views(struct iris_context *ice, const int i = u_bit_scan(&views); struct iris_resource *res = (void *) shs->image[i].res; + if (res->base.target == PIPE_BUFFER) + continue; + if (batch->name != IRIS_BATCH_COMPUTE) { disable_rb_aux_buffer(ice, draw_aux_buffer_disabled, res, 0, ~0, "as a shader image"); |