From: Jason Ekstrand Date: Mon, 23 Jan 2017 18:53:13 +0000 (-0800) Subject: i965/blorp: Use the correct ISL format for combined depth/stencil X-Git-Tag: android-x86-7.1-r1~2862 X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=4c180f9633421a526f3ea6746cf38b809e7c1abb;p=android-x86%2Fexternal-mesa.git i965/blorp: Use the correct ISL format for combined depth/stencil In brw_blorp_copyteximage, we use the format from the render buffer. This could be a combined depth/stencil format. In this case, we handle stencil properly but we give blorp the wrong ISL format. Specifically, we would give blorp ISL_FORMAT_R32G32B32A32_FLOAT which is the wrong size was causing GPU hangs. Fixes: GL45-CTS.gtf30.GL3Tests.packed_depth_stencil.packed_depth_stencil_copyteximage Reviewed-by: Chad Versace Reviewed-by: Topi Pohjolainen Cc: "13.0 17.0" --- diff --git a/src/mesa/drivers/dri/i965/brw_blorp.c b/src/mesa/drivers/dri/i965/brw_blorp.c index d79f529fdc2..3a7cf84db03 100644 --- a/src/mesa/drivers/dri/i965/brw_blorp.c +++ b/src/mesa/drivers/dri/i965/brw_blorp.c @@ -284,8 +284,10 @@ brw_blorp_to_isl_format(struct brw_context *brw, mesa_format format, case MESA_FORMAT_S_UINT8: return ISL_FORMAT_R8_UINT; case MESA_FORMAT_Z24_UNORM_X8_UINT: + case MESA_FORMAT_Z24_UNORM_S8_UINT: return ISL_FORMAT_R24_UNORM_X8_TYPELESS; case MESA_FORMAT_Z_FLOAT32: + case MESA_FORMAT_Z32_FLOAT_S8X24_UINT: return ISL_FORMAT_R32_FLOAT; case MESA_FORMAT_Z_UNORM16: return ISL_FORMAT_R16_UNORM;