Bug 2151128

Summary: Unable to access session via xdmcp
Product: Red Hat Enterprise Linux 8 Reporter: Michal Odehnal <modehnal>
Component: mesaAssignee: Dave Airlie <airlied>
Status: CLOSED ERRATA QA Contact: Desktop QE <desktop-qa-list>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 8.8CC: hdegoede, ofourdan, rstrode, tpelka
Target Milestone: rcKeywords: Triaged
Target Release: ---Flags: pm-rhel: mirror+
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: mesa-22.3.0-1.el8 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2023-05-16 08:35:54 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:
Attachments:
Description Flags
journal log
none
Initialize shm opcode none

Description Michal Odehnal 2022-12-06 08:20:56 UTC
Created attachment 1930369 [details]
journal log

Description of problem:
When using Xephyr to access local session via xdmcp, nothing happens, only black screen.

Version-Release number of selected component (if applicable):
gdm-40.0-25.el8.x86_64
gnome-shell-3.32.2-50.el8.x86_64
xorg-x11-server-Xephyr-1.20.11-10.el8.x86_64

How reproducible:
100%

Steps to Reproduce:
1. Xephyr :99 -query localhost -fullscreen
2.
3.

Actual results:
Black screen.

Expected results:
Login screen loads.

Additional info:
$ cat /etc/gdm/custom.conf
[daemon]
WaylandEnable=false
AutomaticLoginEnable = true
AutomaticLogin = test
[security]

[xdmcp]
Enable=true
[chooser]

[debug]
Enable=true

What jumps out to me is the line: "Cannot use session '/usr/share/gdm/greeter/gnome-session/sessions/gnome-login.session': non-existing or invalid file" which might be relevant since the login screen does not load.

Comment 3 Ray Strode [halfline] 2022-12-06 15:15:26 UTC
this seems to be a mesa regression of some sort following a rebase.

The login screen is there, it's just not painting. The mouse cursor even changes when hovering over where the password field should be.


It happens when going from mesa-22.1.5-2.el8 to mesa-22.3.0-0.4.rc4.el8

Comment 4 Ray Strode [halfline] 2022-12-06 15:29:53 UTC
hmm it's not a problem with software rendering apparently. Xephyr works fine with glxgears and with mutter even, so it seems like it's a problem specific to remote x servers. maybe some sort of shm issue?

Comment 5 Olivier Fourdan 2022-12-06 15:46:59 UTC
(In reply to Ray Strode [halfline] from comment #4)
> hmm it's not a problem with software rendering apparently. Xephyr works fine
> with glxgears and with mutter even, so it seems like it's a problem specific
> to remote x servers. maybe some sort of shm issue?

See if the patch I posted in bug 2092450 helps here.

Comment 6 Ray Strode [halfline] 2022-12-06 16:37:36 UTC
it seems to a problem with shm detection.

 Xephyr -extension mit-shm -query localhost :123

makes it work. So I guess it's trying to use XShmPutImage over a tcp display connection.

Comment 7 Ray Strode [halfline] 2022-12-06 17:36:54 UTC
One issue I've noticed just reading through the code is here:

https://gitlab.freedesktop.org/mesa/mesa/-/commit/68e89401140d1b3a17052899c54577de3f008b67

xshm_opcode is a global variable used in error handlers and it's no longer getting initialized. that might be the problem.

Comment 8 Ray Strode [halfline] 2022-12-06 18:19:42 UTC
Created attachment 1930524 [details]
Initialize shm opcode

yea i did a scratch build here:

https://brewweb.engineering.redhat.com/brew/taskinfo?taskID=49445676

with the obvious change and that fixed it.

Comment 10 Michal Odehnal 2022-12-07 14:10:13 UTC
This fixes the issue for me too.

Comment 17 errata-xmlrpc 2023-05-16 08:35:54 UTC
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 (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/RHBA-2023:2824