panvk: A pipeline might not be bound when the render pass is ended

Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
Reviewed-by: Boris Brezillon <boris.brezillon@collabora.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/12019>
This commit is contained in:
Tomeu Vizoso 2021-07-08 15:48:42 +02:00
parent 7a0acc35af
commit f295e7f1d9
3 changed files with 5 additions and 7 deletions

View File

@ -807,10 +807,11 @@ panvk_cmd_close_batch(struct panvk_cmd_buffer *cmdbuf)
list_addtail(&cmdbuf->state.batch->node, &cmdbuf->batches);
struct pan_tls_info tlsinfo = {
.tls.size = cmdbuf->state.pipeline->tls_size,
.wls.size = cmdbuf->state.pipeline->wls_size,
};
struct pan_tls_info tlsinfo = {};
if (cmdbuf->state.pipeline) {
tlsinfo.tls.size = cmdbuf->state.pipeline->tls_size;
tlsinfo.wls.size = cmdbuf->state.pipeline->wls_size;
}
if (tlsinfo.tls.size) {
tlsinfo.tls.ptr =
@ -850,7 +851,6 @@ panvk_cmd_close_batch(struct panvk_cmd_buffer *cmdbuf)
panvk_emit_fb(cmdbuf->device,
cmdbuf->state.batch,
cmdbuf->state.subpass,
cmdbuf->state.pipeline,
cmdbuf->state.framebuffer,
cmdbuf->state.clear,
&tlsinfo, &cmdbuf->state.batch->tiler.ctx,

View File

@ -788,7 +788,6 @@ unsigned
panvk_emit_fb(const struct panvk_device *dev,
const struct panvk_batch *batch,
const struct panvk_subpass *subpass,
const struct panvk_pipeline *pipeline,
const struct panvk_framebuffer *fb,
const struct panvk_clear_value *clears,
const struct pan_tls_info *tlsinfo,

View File

@ -139,7 +139,6 @@ unsigned
panvk_emit_fb(const struct panvk_device *dev,
const struct panvk_batch *batch,
const struct panvk_subpass *subpass,
const struct panvk_pipeline *pipeline,
const struct panvk_framebuffer *fb,
const struct panvk_clear_value *clears,
const struct pan_tls_info *tlsinfo,