From 50f32bb6e2697306e2d4302055f3c1047bf94a9c Mon Sep 17 00:00:00 2001 From: Alyssa Rosenzweig Date: Tue, 16 Feb 2021 22:30:42 -0500 Subject: [PATCH] panfrost: Fix NULL deref for an empty frag shader Fixes debug builds of dEQP-GLES31.functional.stencil_texturing.render.* Signed-off-by: Alyssa Rosenzweig Part-of: --- src/gallium/drivers/panfrost/pan_cmdstream.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/gallium/drivers/panfrost/pan_cmdstream.c b/src/gallium/drivers/panfrost/pan_cmdstream.c index 4dc34204d0a..21de49aaaf8 100644 --- a/src/gallium/drivers/panfrost/pan_cmdstream.c +++ b/src/gallium/drivers/panfrost/pan_cmdstream.c @@ -315,7 +315,8 @@ panfrost_emit_bifrost_blend(struct panfrost_batch *batch, * the same top 32 bit as the fragment shader. * TODO: Ensure that's always the case. */ - assert((blend[i].shader.gpu & (0xffffffffull << 32)) == + assert(!fs->bo || + (blend[i].shader.gpu & (0xffffffffull << 32)) == (fs->bo->ptr.gpu & (0xffffffffull << 32))); cfg.bifrost.internal.shader.pc = (u32)blend[i].shader.gpu; unsigned ret_offset = fs->info.bifrost.blend[i].return_offset;