[Mesa-dev] [PATCH] i965: Disable guardband clipping on SandyBridge for odd dimensions

Vadym Shovkoplias vadym.shovkoplias at globallogic.com
Tue May 29 10:52:31 UTC 2018


ping

On Thu, May 24, 2018 at 2:02 PM, vadym.shovkoplias <
vadim.shovkoplias at gmail.com> wrote:

> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=104388
> Signed-off-by: Andriy Khulap <andriy.khulap at globallogic.com>
> ---
>  src/mesa/drivers/dri/i965/genX_state_upload.c | 11 +++++++++++
>  1 file changed, 11 insertions(+)
>
> diff --git a/src/mesa/drivers/dri/i965/genX_state_upload.c
> b/src/mesa/drivers/dri/i965/genX_state_upload.c
> index b485e2c..5aa8033 100644
> --- a/src/mesa/drivers/dri/i965/genX_state_upload.c
> +++ b/src/mesa/drivers/dri/i965/genX_state_upload.c
> @@ -2473,6 +2473,17 @@ brw_calculate_guardband_size(uint32_t fb_width,
> uint32_t fb_height,
>      */
>     const float gb_size = GEN_GEN >= 7 ? 16384.0f : 8192.0f;
>
> +   /* Workaround: prevent gpu hangs on SandyBridge
> +    * by disabling guardband clipping for odd dimensions.
> +    */
> +   if (GEN_GEN == 6 && (fb_width & 1 || fb_height & 1)) {
> +      *xmin = -1.0f;
> +      *xmax =  1.0f;
> +      *ymin = -1.0f;
> +      *ymax =  1.0f;
> +      return;
> +   }
> +
>     if (m00 != 0 && m11 != 0) {
>        /* First, we compute the screen-space render area */
>        const float ss_ra_xmin = MIN3(        0, m30 + m00, m30 - m00);
> --
> 2.7.4
>
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/mesa-dev
>



-- 

Vadym Shovkoplias | Senior Software Engineer
GlobalLogic
P +380.57.766.7667  M +3.8050.931.7304  S vadym.shovkoplias
www.globallogic.com
<http://www.globallogic.com/>
http://www.globallogic.com/email_disclaimer.txt
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/mesa-dev/attachments/20180529/d8de707e/attachment.html>


More information about the mesa-dev mailing list