[Mesa-dev] [PATCH] llvmpipe: initialize llvmpipe->dirty with LP_NEW_SCISSOR

Roland Scheidegger sroland at vmware.com
Wed Aug 30 00:17:33 UTC 2017


Looks good to me, thanks.

Reviewed-by: Roland Scheidegger <sroland at vmware.com>

Albeit I'm not quite sure why it is never set here?
This bug looks similar in nature to the uninitialized fb (see
8bfe451ed30918244618608871423b2a72cf9767) and I thought that was
impossible to hit with gl state tracker...

Roland

Am 28.08.2017 um 22:20 schrieb Brian Paul:
> If llvmpipe_set_scissor_states() is never called, we still need to be sure
> that derived scissor/clip state is updated.  As of commit 743ad599a97d09b1
> that function might not be called.
> 
> Fixes regressed Piglit gl-1.0-scissor-offscreen -fbo -auto test.
> 
> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=101709
> ---
>  src/gallium/drivers/llvmpipe/lp_context.c | 6 ++++++
>  1 file changed, 6 insertions(+)
> 
> diff --git a/src/gallium/drivers/llvmpipe/lp_context.c b/src/gallium/drivers/llvmpipe/lp_context.c
> index 599a9f1..613d60f 100644
> --- a/src/gallium/drivers/llvmpipe/lp_context.c
> +++ b/src/gallium/drivers/llvmpipe/lp_context.c
> @@ -227,6 +227,12 @@ llvmpipe_create_context(struct pipe_screen *screen, void *priv,
>  
>     lp_reset_counters();
>  
> +   /* If llvmpipe_set_scissor_states() is never called, we still need to
> +    * make sure that derived scissor state is computed.
> +    * See https://bugs.freedesktop.org/show_bug.cgi?id=101709
> +    */
> +   llvmpipe->dirty |= LP_NEW_SCISSOR;
> +
>     return &llvmpipe->pipe;
>  
>   fail:
> 



More information about the mesa-dev mailing list