You are not logged in.

#1 2018-09-12 18:23:12

dsap
Member
Registered: 2018-09-12
Posts: 10

GDM won't start

I'm dealing with an error on a new install of Arch. The system is a laptop (Asus VivoBook S15) with Arch installed alongside the pre-installed Windows 10 in dual boot. As a bootloader I am using grub.
The video card is a NVIDIA GeForce MX150.

I installed Gnome without any issues. Then after a reboot I started to have some problems: after the boot process it showed the usual fsck result and then it got stuck there, with a blinking cursor. I could switch to the other ttys and log in from one of them but couldn't start GDM in any way. It seemed to me like some kind of driver issue so I removed nouveau and replaced it with nvidia module. Now after the reboot I am stuck at the same point as before but I can't even switch to the other TTYs so I'm unable to access Arch. I replaced "quiet splash" with "text" in the grub config and it still get stuck at some point.

What can I do?
Before the last reboot I took a look at journalctl and the first error I found was: "gnome-shell fatal IO error 11 on X server.

Offline

#2 2018-09-12 18:53:19

loqs
Member
Registered: 2014-03-06
Posts: 6,204

Offline

#3 2018-09-12 22:14:06

dsap
Member
Registered: 2018-09-12
Posts: 10

Re: GDM won't start

At the moment I'm unable to access the system. How can I get log files? I think I can obtain them by booting from a live USB. Is there any other way to do it?
If I must do it from a live system, what should I do exactly? Which files should I look at?

My GRUB version is 2.02.

If I boot with "quiet splash" i get:

starting version 239
/dev/sda5: recover journal
/dev/sda5: Clearing orphaned inode...
/dev/sda5: clean,**/** files, **/**blocks 

When I boot with the "text" option the process hangs after "Started Hostname Service".

Offline

#4 2018-09-12 22:31:22

loqs
Member
Registered: 2014-03-06
Posts: 6,204

Re: GDM won't start

Try Systemd#Change_default_target_to_boot_into to multi-user.target that should prevent gdm.service from starting.
You could then disable gdm.service so it will not start on future boots.
Systemd#Filtering_output assuming the above worked then you could check the journal for output from gdm from previous boots.
See the tip box from List_of_applications#Pastebin_clients to be able to post the output from the console.

Offline

#5 2018-09-12 23:19:53

dsap
Member
Registered: 2018-09-12
Posts: 10

Re: GDM won't start

By changing default target to multi-user.target I was able to get into my sistem.

This is the result of:

journalctl -b -4 -p 4

https://ptpb.pw/cki1

Offline

#6 2018-09-12 23:34:03

loqs
Member
Registered: 2014-03-06
Posts: 6,204

Re: GDM won't start

It appears you ran nvidia-xconfig which generated a configuration which is incompatible with the hybrid graphics the system uses.
See the links to optimus and bumblebee from the linked wiki page which details the options available for such a system.

Offline

#7 2018-09-13 09:37:09

dsap
Member
Registered: 2018-09-12
Posts: 10

Re: GDM won't start

Following the instructions contained in the link you sent me I tried to use the NVIDIA Optimus technology with the nvidia proprietary driver.


Now my xorg.conf file looks like this: https://ptpb.pw/Ij3b
I also created the two optimus.desktop files (one inside /usr/share/gdm/greeter/autostart and the other one inside /etc/xdg/autostart) required to configure GDM: https://ptpb.pw/wJ9D

The gdm service is still disabled but if I try to start it manually I get a black screen. Switching to the other ttys still works (only the first one get stuck).

The output of journalctl is: https://ptpb.pw/muIQ

Also, I forgot to mention that my ttys are rendered with very poor resolution compared to the ones I had in my first boots after the Arch install, so maybe my issue happens before gdm attempts to start.

Please tell me if you need any other logs or info and thanks a lot for your support until now.

Offline

#8 2018-09-13 11:54:37

dsap
Member
Registered: 2018-09-12
Posts: 10

Re: GDM won't start

Now I tried the PRIME option with the nouveau drivers:

First I removed the NVIDIA module and loaded the nouveau drivers. Following the instructions I removed the "nomodeset" kernel parameter from grub configuration (Nouveau requires kernel mode-setting).

Now the ttys are rendered with high resolution and I can start the gdm service. GDM takes some time to start and after I enter my password to login it hangs for a while with some strange stuff in the upper left corner of the screen, so things aren't working perfectly. But then when gnome starts everything seems to be ok.

Then by following the instructions on the PRIME page I checked the list of attached graphics drivers (xrandr --listproviders) but instead of the expected result I get:

Providers: number : 1
Provider 0: id: 0x44 cap: 0xf, Source Output, Sink Output, Source Offload, Sink Offload crtcs: 3 outputs: 2 associated providers: 0 name:modesetting

I think there were also some nouveau errors during boot process. I'll reboot and update this post with the journalctl results.

EDIT:
Here is my systemd journal: https://ptpb.pw/scNC

Last edited by dsap (2018-09-13 12:03:47)

Offline

#9 2018-09-13 12:31:25

dsap
Member
Registered: 2018-09-12
Posts: 10

Re: GDM won't start

After a while the system encountered some lockups and I was unable to use keyboard or mouse.

I added the nouveau.noaccel=1 kernel parameter and now things are getting a bit better (faster GDM loading times and mouse and keyboard don't freeze) but I still get nouveau errors in my logs.

This is the journal for my last boot: https://ptpb.pw/xcK-

EDIT:

Now xrandr --listproviders gives:

Providers: number : 2
Provider 0: id: 0x74 cap: 0xf, Source Output, Sink Output, Source Offload, Sink Offload crtcs: 3 outputs: 2 associated providers: 1 name:modesetting
Provider 1: id: 0x3f cap: 0x5, Source Output, Source Offload crtcs: 0 outputs: 0 associated providers: 1 name:modesetting

So now it seems it recognizes the two GPUs (strangely the two have "modesetting" name instead of Intel and Nvidia).
If I check which card is used (glxinfo | grep "OpenGL renderer") I get Mesa DRI Intel(R) UHD Graphics 620 (Kabylake GT2).

So now, if I understood correctly, the integrated Intel card will be used by default for everything and I can manually switch to the dedicated GPU for intensive applications. On the PRIME page I read:

Note: This setting is no longer necessary when using the default intel/modesetting driver from the official repos, as they have DRI3 enabled by default and will therefore automatically make these assignments. Explicitly setting them again does no harm, though.

Does this mean that the GPU switching is done automatically based on the necessary power? Is this my case?

Last edited by dsap (2018-09-13 12:51:55)

Offline

#10 2018-09-13 14:56:17

loqs
Member
Registered: 2014-03-06
Posts: 6,204

Re: GDM won't start

Could be the same issue as noted here https://bugs.freedesktop.org/show_bug.cgi?id=106787

Offline

#11 2018-09-14 11:21:04

dsap
Member
Registered: 2018-09-12
Posts: 10

Re: GDM won't start

By putting the nouveau.modeset=0 option the nouveau crash doesn't appear. And if I correctly intrepret the journal there is still some sort of KMS (not from the nouveau driver, but from the intel one):

set 14 12:43:00 archlinux kernel: fb: switching to inteldrmfb from EFI VGA

Here are the systemd logs for the boots with and without modeset for nouveau:
with nouveau modeset enabled
with nouveau modeset disabled

By the way, it seems to me that in both cases at a certain point there is the switch to the inteldrmfb and then, when modeset for the nouveau driver is enabled, it tries to switch to it and crashes at this moment. If it is disabled the virtual console graphic is managed by inteldrmfb without any issues. Am I correct?

The problem of disabling modeset for nouveau is that the driver doesn't get loaded at all (xrandr --listproviders only gives one result). How should I set it up so that it loads after boot? Probably nouveau has some issues with KMS when using hybrid graphics but I hope it should work fine when loaded after the boot.

I've followed these instructions to try to set up Optimus/PRIME for my system. In both the above boots I used the drm.rnodes=1 option but as the logs show this option get ignored:

set 14 12:21:59 archlinux kernel: drm: unknown parameter 'rnodes' ignored

In fact I noticed that the option is only necessary when using DRI3 (and as you can see in the logs in my case it's using DRI2). But that shouldn't cause any issue as the option get ignored without producing any error.

Also, in both cases there are gnome-shell errors that maybe are producing the odd behaviour I get after logging in (some strange stuff in the left corner of my screen for some seconds).

Offline

#12 2018-09-14 11:28:38

dsap
Member
Registered: 2018-09-12
Posts: 10

Re: GDM won't start

Note: This setting is no longer necessary when using the default intel/modesetting driver from the official repos, as they have DRI3 enabled by default and will therefore automatically make these assignments. Explicitly setting them again does no harm, though.

I'm using the official drivers as the xrandr --listproviders output in my 3rd post seems to confirm.

But in my logs it seems to be using DRI3 instead of DRI2. In fact, DRI3 gets only initialized as an extension later, by gdm-x-session:

set 14 12:22:28 archlinux /usr/lib/gdm-x-session[694]: (II) Initializing extension DRI3

EDIT:
This is probably the reason for the DRI2 usage instead of DRI3. I think the note on the PRIME page should be updated as at the moment DRI3 is not enabled by default.

Last edited by dsap (2018-09-14 11:44:32)

Offline

#13 2018-09-14 11:50:41

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 5,574

Re: GDM won't start

The commit you point out is going to be irrelevant as we have https://git.archlinux.org/svntogit/pack … -intel#n65 and it is also 4 years old and the surrounding environment has already changed.

Also if you are using modesetting whatever is set in the intel ddx is irrelevant either way. That the modesetting driver reports dri2 despite using dri3 is a known cosmetic anomaly, unless you explicitly configured anything to the contrary, DRI3 will be used: https://bugs.freedesktop.org/show_bug.cgi?id=98875

To me it simply looks like nouveau is currently crashing trying to access your card, I don't think there will be a sensible way to fix this other than waiting for a fix (especially not by flunking about with xorg settings, your kernel driver is crashing that happens before gdm even attempts to start xorg). If you don't require it simply keeping nouveau.modeset=0 should be an adequate workaround for now.

FWIW if, as you tried initially, you want to test out PRIME offloading with nvidia as opposed to nouveau, there's something you should make sure of: Try another method of starting X, GDM is somewhat known to have weird odditiies not present in other methods.

Last edited by V1del (2018-09-14 12:18:50)

Offline

#14 2018-09-14 12:23:38

dsap
Member
Registered: 2018-09-12
Posts: 10

Re: GDM won't start

@V1del Thanks for your help.

How can I know for sure if the problem is the nouveau driver not accessing the card? Can I manually load the driver after the boot process and try to access the card with it?

I would obviously prefer to use the IGP by default, but just for testing purposes, can I try to use the nvidia card with nouveau as default from the beginning and ignore the intel card?

It wouldn't be a big deal for me to be unable to use the dedicated card at the moment. But I would be happy if I could make use of the hybrid graphics in some way.
Obviously the first thing I need to do is find some way to access the card. If I'm sure there is no way to use nouveau maybe I should try again to switch to the proprietary nvidia driver (I can also try the nvidia-beta one) but as you can read in my previous posts I had encountered some problems. How should I proceed to set it up correctly? Should I use a PRIME setup with the closed driver? I also don't mind trying to make it work with Bumblebee.

Also, should I write to the nouveau mailing list to point out the problem?

Last edited by dsap (2018-09-14 12:37:27)

Offline

#15 2018-09-14 12:41:48

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 5,574

Re: GDM won't start

I  just did some googling, that card is of the Pascal series and you don't get much more modern than that. It is incredibly unlikely to work in any usable way with nouveau currently, and I'm sure the nouveau devs are already aware. I think loqs is on the mark this is the same bug as reported there.

Whether you want to set up PRIME or use bumblebee depends on what you want to do. If you want to use the IGP by default and only enable nvidia on a case to case basis, set up bumblebee. If you want to use the nvidia card as your primary ouput to get access to raw power set up PRIME.

As for getting this to work with PRIME, I know that GDM can be finicky, try something simpler like a startx/.xinitrc and the relevant configs from the Optimus article.

However, do one or the other: The configuration steps for PRIME and bumblebee can have directly conflicting consequences to each other, decide which of the two you want to do and follow the relevant  wiki article.

Offline

#16 2018-09-14 12:59:55

dsap
Member
Registered: 2018-09-12
Posts: 10

Re: GDM won't start

Ok, so I'll definitely try to use the nvidia driver. In which package can I find the required driver for my card? Before switching to nouveau I was trying to make it work with the nvidia package driver, should I still use that one? Is this the same as the 396.54 that can be found here?

Last edited by dsap (2018-09-14 13:00:23)

Offline

#17 2018-09-14 14:13:21

V1del
Forum Moderator
Registered: 2012-10-16
Posts: 5,574

Re: GDM won't start

Yes it's the same and the one you should use.

Offline

Board footer

Powered by FluxBB