Module: Mesa Branch: master Commit: 2406e8848eb0bb7223763efeacbbc48ae8d2f251 URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=2406e8848eb0bb7223763efeacbbc48ae8d2f251
Author: Jan Vesely <[email protected]> Date: Thu Apr 5 16:34:00 2018 -0400 radeonsi: Reorder checks in si_check_render_feedback si_get_total_colormask accesses NULL pointer on compute shaders Fixes crashes on clover Fixes: 0669dca9c00261849cee14d69fdea0a5e323c7f7 ("radeonsi: skip DCC render feedback checking if color writes are disabled") CC: Marek Olšák <[email protected]> Signed-off-by: Jan Vesely <[email protected]> Reviewed-by: Marek Olšák <[email protected]> --- src/gallium/drivers/radeonsi/si_blit.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/gallium/drivers/radeonsi/si_blit.c b/src/gallium/drivers/radeonsi/si_blit.c index 40f512a682..35506dd74b 100644 --- a/src/gallium/drivers/radeonsi/si_blit.c +++ b/src/gallium/drivers/radeonsi/si_blit.c @@ -710,15 +710,15 @@ static void si_check_render_feedback_resident_images(struct si_context *sctx) static void si_check_render_feedback(struct si_context *sctx) { + if (!sctx->need_check_render_feedback) + return; + /* There is no render feedback if color writes are disabled. * (e.g. a pixel shader with image stores) */ if (!si_get_total_colormask(sctx)) return; - if (!sctx->need_check_render_feedback) - return; - for (int i = 0; i < SI_NUM_SHADERS; ++i) { si_check_render_feedback_images(sctx, &sctx->images[i]); si_check_render_feedback_textures(sctx, &sctx->samplers[i]); _______________________________________________ mesa-commit mailing list [email protected] https://lists.freedesktop.org/mailman/listinfo/mesa-commit
