From mboxrd@z Thu Jan 1 00:00:00 1970 From: bugzilla-daemon@freedesktop.org Subject: [Bug 101596] Blender renders black UI elements Date: Wed, 05 Jul 2017 03:41:18 +0000 Message-ID: References: Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="===============1906131291==" Return-path: Received: from culpepper.freedesktop.org (culpepper.freedesktop.org [131.252.210.165]) by gabe.freedesktop.org (Postfix) with ESMTP id 715636E121 for ; Wed, 5 Jul 2017 03:41:18 +0000 (UTC) In-Reply-To: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org List-Id: dri-devel@lists.freedesktop.org --===============1906131291== Content-Type: multipart/alternative; boundary="14992260781.CC22b2d1.2293"; charset="UTF-8" --14992260781.CC22b2d1.2293 Date: Wed, 5 Jul 2017 03:41:18 +0000 MIME-Version: 1.0 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://bugs.freedesktop.org/ Auto-Submitted: auto-generated https://bugs.freedesktop.org/show_bug.cgi?id=3D101596 --- Comment #7 from Matias N. Goldberg --- As I keep reading the code and getting familiar, everything starts making sense: /** * If a shader can be created when we get its source. * This means it has only 1 variant, not counting glBitmap and * glDrawPixels. */ boolean shader_has_one_variant[MESA_SHADER_STAGES]; The problem is that after glDrawPixels creates its own variant; st_update_fp will end up using glDrawPixels' variant, instead of the non-glDrawPixels on= e. The same problem happens if glBitmap is used. One simple solution would be to add the variant to the end of the linked li= st, but this may affect the performance profile of radeonsi (i.e. assuming variations created last are more likely to be used than variations created first). The performance concerns can be negated by adding the variation to the end = of the linked list ONLY if glDrawPixels or glBitmap is the caller. --=20 You are receiving this mail because: You are the assignee for the bug.= --14992260781.CC22b2d1.2293 Date: Wed, 5 Jul 2017 03:41:18 +0000 MIME-Version: 1.0 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://bugs.freedesktop.org/ Auto-Submitted: auto-generated

Commen= t # 7 on bug 10159= 6 from Matias N. Goldberg
As I keep reading the code and getting familiar, everything st=
arts making
sense:

/**
* If a shader can be created when we get its source.
* This means it has only 1 variant, not counting glBitmap and
* glDrawPixels.
*/
boolean shader_has_one_variant[MESA_SHADER_STAGES];

The problem is that after glDrawPixels creates its own variant; st_update_fp
will end up using glDrawPixels' variant, instead of the non-glDrawPixels on=
e.

The same problem happens if glBitmap is used.

One simple solution would be to add the variant to the end of the linked li=
st,
but this may affect the performance profile of radeonsi (i.e. assuming
variations created last are more likely to be used than variations created
first).
The performance concerns can be negated by adding the variation to the end =
of
the linked list ONLY if glDrawPixels or glBitmap is the caller.


You are receiving this mail because:
  • You are the assignee for the bug.
= --14992260781.CC22b2d1.2293-- --===============1906131291== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Content-Disposition: inline X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZHJpLWRldmVs IG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBzOi8vbGlz dHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJpLWRldmVsCg== --===============1906131291==--