Bug 1847064
| Summary: | gnome-shell black screen on S390x | ||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Product: | Red Hat Enterprise Linux 8 | Reporter: | Ben Crocker <bcrocker> | ||||||||||||||||||||||
| Component: | mesa | Assignee: | Ben Crocker <bcrocker> | ||||||||||||||||||||||
| Status: | CLOSED ERRATA | QA Contact: | Desktop QE <desktop-qa-list> | ||||||||||||||||||||||
| Severity: | urgent | Docs Contact: | |||||||||||||||||||||||
| Priority: | urgent | ||||||||||||||||||||||||
| Version: | 8.3 | CC: | airlied, csoriano, fmuellner, hannsj_uhl, jadahl, jkoten, jwboyer, lmanasko, mboisver, mclasen, sbarcomb, tpelka, tpopela | ||||||||||||||||||||||
| Target Milestone: | rc | Keywords: | Regression | ||||||||||||||||||||||
| Target Release: | 8.3 | Flags: | pm-rhel:
mirror+
|
||||||||||||||||||||||
| Hardware: | s390x | ||||||||||||||||||||||||
| OS: | Linux | ||||||||||||||||||||||||
| Whiteboard: | |||||||||||||||||||||||||
| Fixed In Version: | Doc Type: | If docs needed, set a value | |||||||||||||||||||||||
| Doc Text: | Story Points: | --- | |||||||||||||||||||||||
| Clone Of: | Environment: | ||||||||||||||||||||||||
| Last Closed: | 2020-11-04 03:28:58 UTC | Type: | Bug | ||||||||||||||||||||||
| Regression: | --- | Mount Type: | --- | ||||||||||||||||||||||
| Documentation: | --- | CRM: | |||||||||||||||||||||||
| Verified Versions: | Category: | --- | |||||||||||||||||||||||
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||||||||||||||||||||
| Cloudforms Team: | --- | Target Upstream Version: | |||||||||||||||||||||||
| Embargoed: | |||||||||||||||||||||||||
| Bug Depends On: | |||||||||||||||||||||||||
| Bug Blocks: | 1842946 | ||||||||||||||||||||||||
| Attachments: |
|
||||||||||||||||||||||||
|
Description
Ben Crocker
2020-06-15 14:46:31 UTC
did this work before ? Does this setup work on different arches? (In reply to Florian Müllner from comment #7) > Does this setup work on different arches? Works on x86_64 on latest RHEL 8.3. Works on Power and ARM. This BZ is somewhat reminiscent of several BZs that Ray Strode, Tom Stellard, and I worked on in 2017: https://bugs.freedesktop.org/show_bug.cgi?id=100613 Regression in Mesa 17 on s390x https://bugzilla.redhat.com/show_bug.cgi?id=1438891 Black output on ppc64 and s390x https://bugzilla.redhat.com/show_bug.cgi?id=1445423 blue shadows on ppc64 and s390x https://bugzilla.redhat.com/show_bug.cgi?id=1456040 Black output on ppc64 and s390x Fortunately, at that time glxgears served as a bellweather to pinpoint bad behavior in Mesa's llvmpipe. And fortunately, glxgears appears to serve in the same capacity today. For today's purposes, glxgears exhibits three different behaviors depending on the underlying version of Mesa: 1) correct display; 2) broken geometry: gears are recognizable, but lighting, orientations, and rotation look wrong; 3) totally random-looking 2D trash. I bisected Mesa between 19.3-branchpoint, which exhibited behavior #2 (broken geometry; later versions 19.3.x show correct behavior), and 20.0-branchpoint; see the attached bisect log. The bisection pointed to commit e6b2af56cb0 (attached), which enabled NIR as the default IR (preferred over TGSI). I did a Mesa 20.1.1 debug build, and ran the following tests: LP_DEBUG=tgsi_ir GALLIVM_DEBUG="ir asm" glxgears >& tgsi.out GALLIVM_DEBUG="ir asm" glxgears >& nir.out The respective output files are posted below. With NIR (and running metacity as the window manager), glxgears exhibited behavior #3, i.e. random 2D trash. But with TGSI, glxgears displayed correctly; AND, as a bonus, gnome-shell is back to working, too! The problem of making NIR work for big-endian remains, however. Created attachment 1698209 [details]
bisect log
Created attachment 1698210 [details]
commit e6b2af56cb0
Created attachment 1698211 [details]
TGSI
Created attachment 1698212 [details]
NIR
Created attachment 1698213 [details]
Possible patch/workaround to go back to TGSI on big-endian arch
Created attachment 1698255 [details]
S390x tri NIR
Here is the NIR output from the Mesa demos trivial/tri program.
This program draws a smooth-shaded triangle on a dim purplish
background (r = 0.3, g = 0.1, b = 0.3, a = 0.0)
using just glBegin/glColor3f/glVertex3f/glEnd to draw the vertices in
counterclockwise order:
x0 = -0.9 y0 = -0.9 z = -30.0 r = 0.8 g = 0 b = 0
x1 = 0.9 y1 = -0.9 z = -30.0 r = 0 g = 0.9 b = 0
x2 = 0.0 y2 = 0.9 z = -30.0 r = 0 g = 0 b = 0.7
So, red on lower left, green on lower right, and blue on top.
Created attachment 1698256 [details]
For comparison, ppc64le tri NIR
For the sake of comparison, here is the NIR output from the same
Mesa demos trivial/tri program.
(In reply to Ben Crocker from comment #18) > Created attachment 1698255 [details] > S390x tri NIR > > Here is the NIR output from the Mesa demos trivial/tri program. > > This program draws a smooth-shaded triangle on a dim purplish > background (r = 0.3, g = 0.1, b = 0.3, a = 0.0) > using just glBegin/glColor3f/glVertex3f/glEnd to draw the vertices in > counterclockwise order: > > x0 = -0.9 y0 = -0.9 z = -30.0 r = 0.8 g = 0 b = 0 > x1 = 0.9 y1 = -0.9 z = -30.0 r = 0 g = 0.9 b = 0 > x2 = 0.0 y2 = 0.9 z = -30.0 r = 0 g = 0 b = 0.7 > > So, red on lower left, green on lower right, and blue on top. Sorry, forgot to mention: at this moment, this program only draws the background, no triangle. Created attachment 1698860 [details]
Latest S390x NIR output
Note the small number of lines beginning with "input"
Created attachment 1698861 [details]
Latest ppc64le NIR output
Note the LARGE number of lines beginning with "input"
Upstream fix merged: https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/5677 Built locally. Created attachment 1700331 [details]
s390x vncserver with gnome
I can successfully begin a vncserver on s390x "Server with GUI" without a black screen and it works as expected.
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory (userspace graphics, xorg-x11, and mesa bug fix and enhancement update), and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHEA-2020:4742 |