You are not logged in.
I believe this happened on the 24.1 patch, but no matter what I do GNOME won't load with wayland. GDM and the user session are both using x11.
To try to get Wayland running:
I've explicitly set WaylandEnable=true in /etc/gdm/custom.conf
I've explicitly set "XDG_SESSION_TYPE=wayland exec dbus-run-session gnome-session" in my .bash_profile
No matter what GDM and GNOME are always running in X11. Is this happening for anyone else? Any ideas how to fix this?
Offline
Are you sure? Could you check by running:
echo $XDG_SESSION_TYPE
Offline
Positive, not only does what you say give me x11, but so does loginctl show-sessions. I just installed Plasma 5.9 on a separate partition to verify wayland works, and it shows wayland with the command you gave, and it is working. I am going to just wipe my gnome partition and give a fresh install and see if that works.
Offline
I fully reinstalled archlinux and GNOME... same effect. No wayland session no matter what I do.
Offline
Same here. For some reason it is no longer detecting the intel part of my hybrid graphics system as a drm kms provider...
Offline
Interesting Taijian, I too have a hybrid graphics system... I wonder if that has anything to do with it.
I've tried several things, including using NVIDIA instead of nouveau, as well as disabling nouveau: both with the same result. I've enabled early KMS for the intel drivers, and I tried each of the other drivers as well to no avail. Whatever the cause, I've looked at the logs and determined gnome-shell gets a segmentation fault twice in libmutter before falling back to the x11 interface. I'll include the first crash here:
4月 29 17:48:26 aokigahara kernel: gnome-shell[410]: segfault at 0 ip 00007fd685399ccd sp 00007ffda8bfc350 error 4 in libmutter-0.so.0.0.0[7fd6852b6000+13e000]
4月 29 17:48:26 aokigahara systemd[1]: Created slice system-systemd\x2dcoredump.slice.
4月 29 17:48:26 aokigahara systemd[1]: Started Process Core Dump (PID 449/UID 0).
4月 29 17:48:26 aokigahara gnome-session[403]: gnome-session-binary[403]: WARNING: Application 'org.gnome.Shell.desktop' killed by signal 11
4月 29 17:48:26 aokigahara gnome-session-binary[403]: Unrecoverable failure in required component org.gnome.Shell.desktop
4月 29 17:48:26 aokigahara gnome-session-binary[403]: WARNING: Application 'org.gnome.Shell.desktop' killed by signal 11
4月 29 17:48:26 aokigahara systemd-coredump[450]: Process 410 (gnome-shell) of user 120 dumped core.
Stack trace of thread 410:
#0 0x00007fd685399ccd n/a (libmutter-0.so.0)
#1 0x00007fd68531a5ec meta_monitor_manager_read_current_state (libmutter-0.so.0)
#2 0x00007fd68531a800 n/a (libmutter-0.so.0)
#3 0x00007fd683e69777 n/a (libgobject-2.0.so.0)
#4 0x00007fd683e6ac0d g_object_newv (libgobject-2.0.so.0)
#5 0x00007fd683e6b3c4 g_object_new (libgobject-2.0.so.0)
#6 0x00007fd68530b3a5 n/a (libmutter-0.so.0)
#7 0x00007fd68539410f n/a (libmutter-0.so.0)
#8 0x00007fd6853497bc meta_init (libmutter-0.so.0)
#9 0x0000000000401d52 main (gnome-shell)
#10 0x00007fd68359e511 __libc_start_main (libc.so.6)
#11 0x000000000040212a n/a (gnome-shell)
Stack trace of thread 413:
#0 0x00007fd68366067d poll (libc.so.6)
#1 0x00007fd683b8a9b6 n/a (libglib-2.0.so.0)
#2 0x00007fd683b8ad42 g_main_loop_run (libglib-2.0.so.0)
#3 0x00007fd684171ff6 n/a (libgio-2.0.so.0)
#4 0x00007fd683bb2295 n/a (libglib-2.0.so.0)
#5 0x00007fd6839292e7 start_thread (libpthread.so.0)
#6 0x00007fd68366a54f __clone (libc.so.6)
Stack trace of thread 448:
#0 0x00007fd68366067d poll (libc.so.6)
#1 0x00007fd683b8a9b6 n/a (libglib-2.0.so.0)
#2 0x00007fd683b8aacc g_main_context_iteration (libglib-2.0.so.0)
#3 0x00007fd65f7df55d n/a (libdconfsettings.so)
#4 0x00007fd683bb2295 n/a (libglib-2.0.so.0)
#5 0x00007fd6839292e7 start_thread (libpthread.so.0)
#6 0x00007fd68366a54f __clone (libc.so.6)
Stack trace of thread 447:
#0 0x00007fd683665889 syscall (libc.so.6)
#1 0x00007fd683bd044a g_cond_wait_until (libglib-2.0.so.0)
#2 0x00007fd683b5ef49 n/a (libglib-2.0.so.0)
#3 0x00007fd683b5f56c g_async_queue_timeout_pop (libglib-2.0.so.0)
#4 0x00007fd683bb2d5d n/a (libglib-2.0.so.0)
#5 0x00007fd683bb2295 n/a (libglib-2.0.so.0)
#6 0x00007fd6839292e7 start_thread (libpthread.so.0)
#7 0x00007fd68366a54f __clone (libc.so.6)
Stack trace of thread 412:
#0 0x00007fd68366067d poll (libc.so.6)
#1 0x00007fd683b8a9b6 n/a (libglib-2.0.so.0)
#2 0x00007fd683b8aacc g_main_context_iteration (libglib-2.0.so.0)
#3 0x00007fd683b8ab11 n/a (libglib-2.0.so.0)
#4 0x00007fd683bb2295 n/a (libglib-2.0.so.0)
#5 0x00007fd6839292e7 start_thread (libpthread.so.0)
#6 0x00007fd68366a54f __clone (libc.so.6)
4月 29 17:48:27 aokigahara systemd-logind[347]: Removed session c1.
4月 29 17:48:27 aokigahara gdm[367]: Child process -398 was already dead.
4月 29 17:48:27 aokigahara gdm[367]: Child process 387 was already dead.
4月 29 17:48:27 aokigahara gdm[367]: Unable to kill session worker process
Offline
I fully reinstalled archlinux and GNOME... same effect. No wayland session no matter what I do.
Weird, working without any issues here. I don' t recommend reinstalling the OS.
Do you have multi GPU? Could you try to boot with only the Intel GPU (and disabling NV-GPU in bios)?
Offline
invocation of the crashing function depends on META_EXPERIMENTAL_FEATURE_MONITOR_CONFIG_MANAGER - don't ask me how to configure that, though (notice the "experimental", probably disabled by default)
Online
I do have a muti GPU, unfortunately it is in a laptop setup and is integrated, so I can't disabled one or the other (from my understanding, and the option is not present in the BIOS, I've tried); it's the same reason why I can't do a PCI pass-through and virtualize a windows machine using native hardware for my discrete graphics card. I did try setting nouveau.modeset=0 as a kernel parameter, which seemed to take out the nvidia card (or at least the systems ability to use it, because lspci will still show it there), but I was having the same error despite that.
Offline
@seth you think it is failing somewhere in https://github.com/GNOME/mutter/blob/ma … er.c#L2602?
Edit:
Do you think rebuilding the mutter package with 'debug !strip' added to the options and '--enable-debug' passed to configure might produce an improved trace / core dump?
Last edited by loqs (2017-04-30 17:21:16)
Offline
Yes (I only grepped a partial string and hit the dbus handler ...) and yes - the trace ends in libmutter and knowing the exact line number (doesn't look entirely stripped, but the unresolved functions are local statics) of the crash will get one ahead (though not necessarily to an answer)
Online
Same here. For some reason it is no longer detecting the intel part of my hybrid graphics system as a drm kms provider...
My primary workstation has both Intel Ivy Bridge integrated graphics and an AMD graphics card, and since GNOME 3.24 came around it is only able to run an Xorg GNOME session.
My previous workstation has only a dedicated graphics card, and that one can run GNOME in Wayland mode just fine.
So there might be something to it.
I have another PC around with an Intel integrated GPU and an AMD graphics card and I think I'm gonna try that one next and see if the multi-GPU hypothesis holds up.
Also I guess I'll look whether my primary workstation offers an IGPU disable function in its BIOS.
@edit: Unfortunately my primary workstation's BIOS does not offer such a thing.
Last edited by eomanis (2017-05-01 10:52:41)
Offline
I can confirm the mutli-GPU bug. It's a bug in Mutter not being able to find the right DRM KMS device. In my case I have a dual 7870 setup that is crossfired in Windows (but totally useless in Linux), and I'm getting the same issue. The error message is coming from https://github.com/GNOME/mutter/blob/ma … ive.c#L586
Last edited by werfu (2017-05-02 01:09:27)
Offline
The "missing kms" multi gpu issue does however not seem to match the segfault in comment #6 and Sarvadamana has not yet mentioned a "Can't initialize KMS backend" message.
Also you do not seem to be running a hybrid setup, but crossfire?
Should be (relatively) easy enough to test the multi-gpu condition by removing one of the devices.
Online
To try to get Wayland running:
I've explicitly set WaylandEnable=true in /etc/gdm/custom.conf
This setting is just for GDM and whether GDM runs with Wayland. The session type of Gnome depends on which session you select in the cog menu in GDM when logging in
I've explicitly set "XDG_SESSION_TYPE=wayland exec dbus-run-session gnome-session" in my .bash_profile
What is this supposed to do in .bash_profile?
Offline
Mutter in 3.24 disables Wayland on multiple gpu systems due to a 'lack of support'. To re-enable it add `MUTTER_ALLOW_HYBRID_GPUS=1` to your /etc/environment.
Offline
rockon999: I just tried that, but unfortunately I am still getting a crash with libmutter. Curious though, where did you get that information from? Maybe there is something more I need to do. I know wayland works on my system, because it did before.
phw: I understand that you select which session you do in the cog menu, though thanks for trying to clarify that in case I was completely lost, lol, you never know. Though I will also note that GDM is running in X11 as well, and I would prefer it to run in Wayland as it should (and was previously). Setting XDG_SESSION_TYPE in the .bash_profile came from the Arch Wiki, which said that is how you manually log into a wayland session with GNOME, and I am just desperate and trying everything I can to get it to work.
Also, seth is correct, I am not getting a "Cannot Initialize KMS backend" error... KMS backend (appears) to be working just fine. I just checked into crossfire, and I don't believe that is what I am running... my Chipset is Intel Core i7-5500U CPU @ 2.40GHz × 4 and my Integrated GPU is Intel HD Graphics 5500 (Broadwell GT2), and then my discrete graphics card is NVIDIA Corporation GM107M [GeForce GTX 950M]. If you know how to remove one of these devices completely that might help. There is no option to do so in the BIOS, and setting modeset=0 as a kernel parameter to either device hasn't helped either.
Offline
Mutter in 3.24 disables Wayland on multiple gpu systems due to a 'lack of support'. To re-enable it add `MUTTER_ALLOW_HYBRID_GPUS=1` to your /etc/environment.
This worked for me on my asus laptop with hybrid intel/amd gpu. Thanks!!
Offline
nvidia or nouveau driver?
Afaik, optimus doesn't really work w/ wayland and nvidia support is still flawed (even on 3.24) so first thing would be to replace nvidia w/ nouveau (in case)
You might or not be able to toggle the IGP or GPU in your BIOS settings.
Ultimately, you want to select the /sys/class/drm/<card>, but I've no idea whether that's possible with gnome, sorry :-(
(Weston can, consult the wiki on wayland)
Crossfire is the AMD/ATI variant of SLI
Online
I've attempted it with both of those... and both NVIDIA and nouveau fail. No option in the BIOS to toggle the GPU, unfortunately.
My setup worked just fine on wayland until the GNOME 24.1 release... it was working on plain 24... so it's not that it isn't supported, but a bug has appeared on 24.1.
Offline
User rockon999 figured it out.
Since version 3.24 mutter intentionally falls back to Xorg if there are multiple DRM devices, because on Wayland it is currently not possible to use video outputs of multiple video devices simultaneously.
If your displays are only connected to one of your video devices, you can set this environment value in /etc/environment:
MUTTER_ALLOW_HYBRID_GPUS=1
This worked for me, it did require a reboot though.
Relevant links:
http://howtos.davidsebek.com/fedora-25- … d-gpu.html
https://bugzilla.gnome.org/show_bug.cgi?id=771442
https://bugzilla.redhat.com/show_bug.cgi?id=1375247
https://mail.gnome.org/archives/commits … 06748.html
Offline
This is a different issue than mine, thought it may have lead to something that is causing my issue. I was reading the documents and this is for systems that have two separate GPUs... Unfortunately, in a basic laptop setup, the GPUs are integrated into a single output via a mux, so you don't deal with the issues that people with two GPUs with different outputs had, which is why my system was working just fine until someone's bug "solution" has ended up causing a bug on my system.
MUTTER_ALLOW_HYBRID_GPUS=1
Has no effect on my system (and yes, I rebooted). Also, I think for other people GDM fails over to X11 because it notices a hybrid graphics system, I straight up get a seg fault in libmutter. I think the GNOME developers working on mutter have decided to forsake people with muxed laptop graphics.
Offline
Apologies, but this is one of the top search engine results for eomanis's issue. I can confirm setting
MUTTER_ALLOW_HYBRID_GPUS=1
fixes the issue on my system.
$ lspci | grep "VGA"
00:01.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Richland [Radeon HD 8670D]
01:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Ellesmere [Radeon RX 470/480] (rev c7)
AMD APU + dedicated GPU.
Sarvadamana might be interested in the GNOME bug report and relevant mutter commits.
edit: Whoops, completely missed the bug report was already mention by eomanis.
Last edited by GrieverV (2017-05-07 00:31:52)
Offline
I believe this happened on the 24.1 patch, but no matter what I do GNOME won't load with wayland. GDM and the user session are both using x11.
To try to get Wayland running:
I've explicitly set WaylandEnable=true in /etc/gdm/custom.conf
I've explicitly set "XDG_SESSION_TYPE=wayland exec dbus-run-session gnome-session" in my .bash_profileNo matter what GDM and GNOME are always running in X11. Is this happening for anyone else? Any ideas how to fix this?
I have the same problem in my laptop with only intel hd 5500 graphics and none of this options solved the problem to me. Gdm always start X11. Then I have tried starting with sddm and the "Gnome (Wayland)" session profile doesn't starts.
Edit: maybe not an error of hybrid graphics, but yes an error with intel graphics?
Last edited by 4ronie4 (2017-06-04 16:24:11)
Offline
4ronie4, very interesting! I, too, also happen to be running the exact same Intel graphics as you: Intel HD Graphics 5500; I have another laptop running Intel HD Graphics 520 and a desktop running Intel HD Graphics 530, and both of those work fine, so it might just be with this one specific integrated GPU. The thing is, I've also tried to run it off my discrete GPU, an NVIDIA GM107M [GeForce GTX 950M], and it also does not work... but given that they are muxed for me and I can't disable one or the other in the BIOS, it might be affecting it somehow.
The 24.2 upgrade unfortunately is suffering the same issue as the 24.1: gnome-shell gets a segfault in libmutter. I might just have to wait until the GNOME 26 release, and hope someone else that has the knowledge to fix it has the same issue... I think it is just so isolated to just a few people that it isn't going to get fixed.
Offline