From 77844690be7ef8e6e2b24ff1acd85f908ec566f4 Mon Sep 17 00:00:00 2001 From: Danylo Piliaiev Date: Thu, 2 Jul 2020 11:39:25 +0300 Subject: [PATCH] iris: Fix fast-clearing of depth via glClearTex(Sub)Image If we clear depth only texture via glClearTex(Sub)Image it may cause: ../src/intel/blorp/blorp_genX_exec.h:1554: blorp_emit_surface_states: Assertion `params->depth.enabled || params->stencil.enabled' failed. due to clear_depth_stencil calling blorp_clear_depth_stencil when depth is already fast-cleared and there is no stencil. Fixes piglit test: arb_clear_texture-depth Fixes: 51638cf18a532510f9e1fd8f36207b56d38137b8 Signed-off-by: Danylo Piliaiev Reviewed-by: Lionel Landwerlin Part-of: --- src/gallium/drivers/iris/iris_clear.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/gallium/drivers/iris/iris_clear.c b/src/gallium/drivers/iris/iris_clear.c index 5093641..2a78155 100644 --- a/src/gallium/drivers/iris/iris_clear.c +++ b/src/gallium/drivers/iris/iris_clear.c @@ -583,7 +583,7 @@ clear_depth_stencil(struct iris_context *ice, /* At this point, we might have fast cleared the depth buffer. So if there's * no stencil clear pending, return early. */ - if (!(clear_depth || clear_stencil)) { + if (!(clear_depth || (clear_stencil && stencil_res))) { return; } -- 2.7.4