Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at bugzilla.redhat.com.

Bug 1629409

Summary: switching to tty2 then back to gdm results in hang, gdm must be restarted
Product: [Fedora] Fedora Reporter: Chris Murphy <bugzilla>
Component: gnome-shellAssignee: Ray Strode [halfline] <rstrode>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 29CC: fmuellner, gmarr, hdegoede, kparal, otaylor, robatino
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard: AcceptedBlocker
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2018-10-02 19:33:26 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: 1517013    
Attachments:
Description Flags
journal snippet
none
screencast of the problem reproduced in VM
none
system journal from VM none

Description Chris Murphy 2018-09-15 22:03:50 UTC
Description of problem:

Switch to tty2 (control-alt-F2), works fine. I can login and do stuff and logout and log back in. But as soon as I control-alt-F1, I get a "hang" or rather a totally non-functional console from which I cannot get out of. I can't switch to another tty either.


Version-Release number of selected component (if applicable):
gnome-shell-3.30.0-1.fc29.x86_64

How reproducible:
Always

Steps to Reproduce:
1. control-alt-f2
2. control-alt-f1
3.

Actual results:

Lockout - can't do anything from the computer but force power off. I can ssh into the machine if sshd is running, and 'systemctl restart gdm' usually fixes the problem, or sometimes gdm coredumps but then the next try will work and I have access again.

Expected results:

Should be able to go to/from console and gdm with impunity.

Additional info:

Comment 1 Chris Murphy 2018-09-15 22:18:57 UTC
Created attachment 1483580 [details]
journal snippet

Includes drm.debug=0x1e so it's a bit messy. The very start of this I'm at graphical login.

[19015.440542] control-alt-f2
[19030 - 19031] control-alt-f1

now I'm "frozen" and nothing works

[19065.028342] restart gdm to regain control

Comment 2 Kamil Páral 2018-09-19 08:34:40 UTC
Chris, I assume you're testing this from gdm without logging in, so the reproducer is as follows:

1. boot the system into gdm, don't log in
2. switch to tty2 (see text login prompt)
3. try to switch back to tty1, see your display frozen and no key combos work anymore (locally, the computer is "hung", but you can ssh in)

I can reproduce this perfectly on my Thinkpad T480s.

I can also reproduce this easily in a VM (using both QXL and Virtio graphics), with a single difference - the key combos are no longer stuck or consumed, so you can actually escape from the trap. And that's very interesting, because you can see what's going on. When you switch back to tty1, the screen is black (or with a blinking cursor with virtio graphics). The gdm is gone. But when you switch back to tty2 and again to tty1, gdm is restarted after a few seconds and it's functional. This happens *exactly* every two switches to tty1. Every first switch, gdm is gone, every second switch, gdm is restarted.

I don't think this is driver related. This probably occurs on every machine.

I've read some months back about the possibility of reducing memory using by shutting down gdm when not needed (you're logged in) and restarting it when needed. I wonder whether this is all related to this. I can no longer find the blogpost, I think Hans could be related to this effort.

CC Hans. Hans, am I remembering your name correctly and can you have a look at this, or am I mistaken? Thanks!

Comment 3 Kamil Páral 2018-09-19 08:36:16 UTC
Created attachment 1484588 [details]
screencast of the problem reproduced in VM

Here's a short video of the problem shown in a VM.

Comment 4 Kamil Páral 2018-09-19 08:44:46 UTC
Created attachment 1484591 [details]
system journal from VM

Here's a journal after a clean boot in the VM and following the reproducer in comment 2. I see the following errors in the log:

Sep 19 10:38:30 f29ut gnome-shell[830]: Could not release device (13,68): GDBus.Error:org.freedesktop.login1.DeviceNotTaken: Device not taken
Sep 19 10:38:30 f29ut gnome-shell[830]: clutter_input_device_get_device_type: assertion 'CLUTTER_IS_INPUT_DEVICE (device)' failed
Sep 19 10:38:30 f29ut gnome-shell[830]: JS ERROR: TypeError: device is null
                                        _init/<@resource:///org/gnome/shell/ui/keyboard.js:591:1
<snip>
Sep 19 10:38:34 f29ut gnome-shell[830]: WL: unknown object (20), message get_relative_pointer(no)
Sep 19 10:38:34 f29ut gnome-shell[830]: WL: error in client communication (pid 830)
Sep 19 10:38:34 f29ut org.gnome.Shell.desktop[830]: (EE)
Sep 19 10:38:34 f29ut org.gnome.Shell.desktop[830]: Fatal server error:
Sep 19 10:38:34 f29ut org.gnome.Shell.desktop[830]: (EE) wl_display@1: error 1: invalid arguments for zwp_relative_pointer_manager_v1
Sep 19 10:38:34 f29ut org.gnome.Shell.desktop[830]: (EE)
<snip>
Sep 19 10:38:34 f29ut gdm-launch-environment][1209]: pam_unix(gdm-launch-environment:session): session closed for user gdm
Sep 19 10:38:34 f29ut gdm[692]: Child process -1221 was already dead.


Package versions:
gdm-3.30.0-3.fc29.x86_64
gnome-shell-3.30.0-3.fc29.x86_64
xorg-x11-server-Xorg-1.20.1-2.fc29.x86_64

Comment 5 Kamil Páral 2018-09-19 08:50:37 UTC
Proposing for a blocker discussion. We have a criterion that covers text installs:
"A system installed without a graphical package set must boot to a working login prompt without any unintended user intervention, and all virtual consoles intended to provide a working login prompt must do so. "
https://fedoraproject.org/wiki/Fedora_29_Beta_Release_Criteria#Expected_installed_system_boot_behavior

but we don't have one explicitly stating that switching ttys must work on a graphical system. On the other hand, the gdm login prompt is clearly not working after the first switch from and back.

Comment 6 Hans de Goede 2018-09-19 09:24:28 UTC
I believe this is fixed by my fixes from:

https://gitlab.gnome.org/GNOME/gdm/merge_requests/45

But as discussed there these need some more work.

Comment 7 Geoffrey Marr 2018-09-24 19:30:45 UTC
Discussed during the 2018-09-24 blocker review meeting: [1]

The decision to classify this bug as an "AcceptedBlocker" was made as it violates the following criteria:

"All applications that can be launched using the standard graphical mechanism of a release-blocking desktop after a default installation of that desktop must start successfully and withstand a basic functionality test", with gdm treated as an 'application' and "surviving a VT switch" as "basic functionality".

[1] https://meetbot.fedoraproject.org/fedora-blocker-review/2018-09-24/f29-blocker-review.2018-09-24-16.05.txt

Comment 8 Fedora Update System 2018-09-29 07:28:21 UTC
yelp-xsl-3.30.1-1.fc29 webkit2gtk3-2.22.2-1.fc29 vala-0.42.2-1.fc29 tracker-miners-2.1.5-1.fc29 tracker-2.1.5-1.fc29 sysprof-3.30.1-1.fc29 simple-scan-3.30.1.1-1.fc29 pygobject3-3.30.1-1.fc29 orca-3.30.0-1.fc29 mutter-3.30.0-2.fc29 libsoup-2.64.1-1.fc29 librsvg2-2.44.6-1.fc29 libdazzle-3.30.1-1.fc29 json-glib-1.4.4-1.fc29 gvfs-1.38.1-1.fc29 gnote-3.30.0-1.fc29 gnome-user-docs-3.30.1-1.fc29 gnome-tweaks-3.30.1-1.fc29 gnome-software-3.30.1-2.fc29 gnome-settings-daemon-3.30.1.1-1.fc29 gnome-session-3.30.1-1.fc29 gnome-photos-3.30.1-1.fc29 gnome-mines-3.30.1.1-1.fc29 gnome-maps-3.30.1-1.fc29 gnome-initial-setup-3.30.0-1.fc29 gnome-disk-utility-3.30.1-1.fc29 gnome-devel-docs-3.30.1-1.fc29 gnome-desktop3-3.30.1-1.fc29 gnome-control-center-3.30.1-1.fc29 gnome-contacts-3.30.1-1.fc29 gnome-calculator-3.30.1-1.fc29 gnome-builder-3.30.1-1.fc29 glib2-2.58.1-1.fc29 gjs-1.54.1-1.fc29 gedit-plugins-3.30.1-1.fc29 gedit-3.30.1-1.fc29 gdm-3.30.1-1.fc29 file-roller-3.30.1-1.fc29 evolution-mapi-3.30.1-1.fc29 evolution-ews-3.30.1-1.fc29 evolution-data-server-3.30.1-1.fc29 evolution-3.30.1-1.fc29 epiphany-3.30.1-1.fc29 eog-3.28.4-1.fc29 dconf-editor-3.30.2-1.fc29 bijiben-3.30.1-1.fc29 has been submitted as an update to Fedora 29. https://bodhi.fedoraproject.org/updates/FEDORA-2018-c379dfdea4

Comment 9 Fedora Update System 2018-09-30 00:25:07 UTC
bijiben-3.30.1-1.fc29, dconf-editor-3.30.2-1.fc29, eog-3.28.4-1.fc29, epiphany-3.30.1-1.fc29, evolution-3.30.1-1.fc29, evolution-data-server-3.30.1-1.fc29, evolution-ews-3.30.1-1.fc29, evolution-mapi-3.30.1-1.fc29, file-roller-3.30.1-1.fc29, gdm-3.30.1-1.fc29, gedit-3.30.1-1.fc29, gedit-plugins-3.30.1-1.fc29, gjs-1.54.1-1.fc29, glib2-2.58.1-1.fc29, gnome-boxes-3.30.1-2.fc29, gnome-builder-3.30.1-1.fc29, gnome-calculator-3.30.1-1.fc29, gnome-contacts-3.30.1-1.fc29, gnome-control-center-3.30.1-1.fc29, gnome-desktop3-3.30.1-1.fc29, gnome-devel-docs-3.30.1-1.fc29, gnome-disk-utility-3.30.1-1.fc29, gnome-initial-setup-3.30.0-1.fc29, gnome-maps-3.30.1-1.fc29, gnome-mines-3.30.1.1-1.fc29, gnome-music-3.30.1-1.fc29, gnome-photos-3.30.1-1.fc29, gnome-settings-daemon-3.30.1.1-1.fc29, gnome-software-3.30.1-2.fc29, gnome-tweaks-3.30.1-1.fc29, gnome-user-docs-3.30.1-1.fc29, gnote-3.30.0-1.fc29, gvfs-1.38.1-1.fc29, json-glib-1.4.4-1.fc29, libdazzle-3.30.1-1.fc29, librsvg2-2.44.6-1.fc29, libsoup-2.64.1-1.fc29, mutter-3.30.0-2.fc29, orca-3.30.0-1.fc29, pygobject3-3.30.1-1.fc29, shotwell-0.30.1-1.fc29, simple-scan-3.30.1.1-1.fc29, sysprof-3.30.1-1.fc29, tracker-2.1.5-1.fc29, tracker-miners-2.1.5-1.fc29, vala-0.42.2-1.fc29, webkit2gtk3-2.22.2-1.fc29, yelp-xsl-3.30.1-1.fc29 has been pushed to the Fedora 29 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2018-c379dfdea4

Comment 10 Kamil Páral 2018-10-01 12:11:38 UTC
I tested this and this is fixed with:
gdm-3.30.1-1.fc29.x86_64
gnome-shell-3.30.0-9.fc29.x86_64

Comment 11 Fedora Update System 2018-10-02 19:33:26 UTC
bijiben-3.30.1-1.fc29, dconf-editor-3.30.2-1.fc29, eog-3.28.4-1.fc29, epiphany-3.30.1-1.fc29, evolution-3.30.1-1.fc29, evolution-data-server-3.30.1-1.fc29, evolution-ews-3.30.1-1.fc29, evolution-mapi-3.30.1-1.fc29, file-roller-3.30.1-1.fc29, gdm-3.30.1-1.fc29, gedit-3.30.1-1.fc29, gedit-plugins-3.30.1-1.fc29, gjs-1.54.1-1.fc29, glib2-2.58.1-1.fc29, gnome-boxes-3.30.1-2.fc29, gnome-builder-3.30.1-1.fc29, gnome-calculator-3.30.1-1.fc29, gnome-contacts-3.30.1-1.fc29, gnome-control-center-3.30.1-1.fc29, gnome-desktop3-3.30.1-1.fc29, gnome-devel-docs-3.30.1-1.fc29, gnome-disk-utility-3.30.1-1.fc29, gnome-initial-setup-3.30.0-1.fc29, gnome-maps-3.30.1-1.fc29, gnome-mines-3.30.1.1-1.fc29, gnome-music-3.30.1-1.fc29, gnome-photos-3.30.1-1.fc29, gnome-settings-daemon-3.30.1.1-1.fc29, gnome-software-3.30.1-2.fc29, gnome-tweaks-3.30.1-1.fc29, gnome-user-docs-3.30.1-1.fc29, gnote-3.30.0-1.fc29, gvfs-1.38.1-1.fc29, json-glib-1.4.4-1.fc29, libdazzle-3.30.1-1.fc29, librsvg2-2.44.6-1.fc29, libsoup-2.64.1-1.fc29, mutter-3.30.0-2.fc29, orca-3.30.0-1.fc29, pygobject3-3.30.1-1.fc29, shotwell-0.30.1-1.fc29, simple-scan-3.30.1.1-1.fc29, sysprof-3.30.1-1.fc29, tracker-2.1.5-1.fc29, tracker-miners-2.1.5-1.fc29, vala-0.42.2-1.fc29, webkit2gtk3-2.22.2-1.fc29, yelp-xsl-3.30.1-1.fc29 has been pushed to the Fedora 29 stable repository. If problems still persist, please make note of it in this bug report.