Bug 1620306 - kernel - Xorg/gdm no display for nouveau due to permissions issue
Summary: kernel - Xorg/gdm no display for nouveau due to permissions issue
Keywords:
Status: CLOSED EOL
Alias: None
Product: Fedora
Classification: Fedora
Component: systemd
Version: 31
Hardware: x86_64
OS: Linux
high
high
Target Milestone: ---
Assignee: systemd-maint
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2018-08-22 23:57 UTC by Martyn Hare
Modified: 2020-11-24 19:23 UTC (History)
26 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2020-11-24 19:23:56 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)
Broken Boot - boot-kernel-4.18.3-300.fc29.x86_64.log (266.20 KB, text/x-vhdl)
2018-08-22 23:57 UTC, Martyn Hare
no flags Details
Working Boot - boot-kernel-4.18.0-1.fc29.x86_64.log (404.66 KB, text/x-vhdl)
2018-08-22 23:58 UTC, Martyn Hare
no flags Details
lsmod output for a fully booted system (5.67 KB, text/plain)
2018-08-23 00:01 UTC, Martyn Hare
no flags Details
Miscellaneous environment info (lspci,lsusb,lsblk,lsmem,lscpu,lsinitrd) (222.01 KB, text/plain)
2018-08-23 00:07 UTC, Martyn Hare
no flags Details

Description Martyn Hare 2018-08-22 23:57:37 UTC
Created attachment 1478013 [details]
Broken Boot - boot-kernel-4.18.3-300.fc29.x86_64.log

Version: Linux version 4.18.3-300.fc29.x86_64 (mockbuild.fedoraproject.org) (gcc version 8.2.1 20180801 (Red Hat 8.2.1-2) (GCC)) #1 SMP 

When booting, gdm either loads to a cursor top-left or black screen, never rendering anything. Cannot VT switch or CTRL+ALT+DEL but can use power button to trigger ACPI shutdown.   Issue occurs whether auto-loaded as part of boot process or loaded manually via 'service gdm start'.  Setting SELinux to permissive does not resolve the issue.

To reproduce, boot system with kernel-4.18.3-300.fc29.x86_64 while using a GeForce GTX 970 GPU using nouveau drivers.  It doesn't matter if you have non-free firmware packages from rpmfusion, the same issue seems to occur as it appears to be a permissions issue on the card0 device node.  To demonstrate the issue is related to the kernel package, one can boot kernel-4.18.0-1.fc29.x86_64 without any problems with the same userland installed.

I have attached two logs to assist in debugging.

Current result (broken) is boot-kernel-4.18.3-300.fc29.x86_64.log
Expected result (working) is boot-kernel-4.18.0-1.fc29.x86_64.log

To quote the log and why I think it's a permissions issue:

Aug 23 00:07:54 localhost.localdomain systemd[1640]: Startup finished in 1.348s.
Aug 23 00:07:54 localhost.localdomain org.gnome.Shell.desktop[1683]: glamor: No eglstream capable devices found
Aug 23 00:07:54 localhost.localdomain org.gnome.Shell.desktop[1683]: wayland-egl: could not open /dev/dri/card0 (Permission denied)

On a working boot with the older kernel, I do not encounter the permission denied line in the logs.

Please let me know if you require any further information

Kind Regards,

Martyn Hare

Comment 1 Martyn Hare 2018-08-22 23:58:37 UTC
Created attachment 1478014 [details]
Working Boot - boot-kernel-4.18.0-1.fc29.x86_64.log

Comment 2 Martyn Hare 2018-08-23 00:01:39 UTC
Created attachment 1478015 [details]
lsmod output for a fully booted system

Useful in case anyone wishes to know what drivers are used in the environment when reproducing

Comment 3 Martyn Hare 2018-08-23 00:07:18 UTC
Created attachment 1478016 [details]
Miscellaneous environment info (lspci,lsusb,lsblk,lsmem,lscpu,lsinitrd)

Just in case.  This gives some insight into the hardware used and stats related to initrd contents, in case there's something else non-kernel going on.

Comment 4 Martyn Hare 2018-08-23 10:14:11 UTC
I have a workaround now.  I did some testing with kernel-4.18.4-300.fc29.x86_64 as recently uploaded.  Still an issue.  However, what I have noticed is that the permissions on the device nodes remain the same between both kernels.

crw-rw----+  1 root video  system_u:object_r:dri_device_t:s0 226,   0 Aug 23 10:58 card0
crw-rw-rw-.  1 root render system_u:object_r:dri_device_t:s0 226, 128 Aug 23 10:58 renderD128

If I do a chmod 777 on card0, everything starts working with the newer kernel.
With the older kernel, I do not have to do this and yet I get a working display anyway.

Any ideas?

Comment 5 Laura Abbott 2018-08-23 14:16:57 UTC
So I don't think this is actually a core kernel issue. The changes that came in between 4.18 and 4.18.3 were almost all L1TF related and would not affect the permissions. I think this is caused by some other userspace package since that's what's actually responsible for setting the correct permissions. What happens is when the kernel is installed, the initramfs is built based on what you have installed in the system. I suspect some package that's responsible for setting the permissions came in and got picked up with the newer kernel. I'm going to move this to the graphics team to take a look.

Comment 6 Dan Horák 2018-08-23 14:41:51 UTC
The file permissions are OK. What does "getfacl /dev/dri/card0" say? Mine contains "rw" for myself.

AFAIK it's the session manager (systemd) what gives the ACLs for the user logged on the console.

Comment 7 Ben Cotton 2019-10-31 20:43:33 UTC
This message is a reminder that Fedora 29 is nearing its end of life.
Fedora will stop maintaining and issuing updates for Fedora 29 on 2019-11-26.
It is Fedora's policy to close all bug reports from releases that are no longer
maintained. At that time this bug will be closed as EOL if it remains open with a
Fedora 'version' of '29'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version' 
to a later Fedora version.

Thank you for reporting this issue and we are sorry that we were not 
able to fix it before Fedora 29 is end of life. If you would still like 
to see this bug fixed and are able to reproduce it against a later version 
of Fedora, you are encouraged  change the 'version' to a later Fedora 
version prior this bug is closed as described in the policy above.

Although we aim to fix as many bugs as possible during every release's 
lifetime, sometimes those efforts are overtaken by events. Often a 
more recent Fedora release includes newer upstream software that fixes 
bugs or makes them obsolete.

Comment 8 Ben Cotton 2019-11-27 19:24:55 UTC
Fedora 29 changed to end-of-life (EOL) status on 2019-11-26. Fedora 29 is
no longer maintained, which means that it will not receive any further
security or bug fix updates. As a result we are closing this bug.

If you can reproduce this bug against a currently maintained version of
Fedora please feel free to reopen this bug against that version. If you
are unable to reopen this bug, please file a new report against the
current release. If you experience problems, please add a comment to this
bug.

Thank you for reporting this bug and we are sorry it could not be fixed.

Comment 9 Marko Myllynen 2019-12-02 09:43:40 UTC
I'm seeing the same issue of GDM not starting on Fedora 31 using Intel display adapter so this is not nouveau related.

The root cause seems to be systemd configuration as explained at https://github.com/systemd/systemd/issues/13943.

To workaround this I've applied the suggestion from the upstream issue:

# echo drm > /etc/modules-loadd/test.conf

I'm reopening this BZ to track fixing this issue in Fedora properly.

Thanks.

Comment 10 Ben Cotton 2020-11-03 17:18:35 UTC
This message is a reminder that Fedora 31 is nearing its end of life.
Fedora will stop maintaining and issuing updates for Fedora 31 on 2020-11-24.
It is Fedora's policy to close all bug reports from releases that are no longer
maintained. At that time this bug will be closed as EOL if it remains open with a
Fedora 'version' of '31'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, simply change the 'version' 
to a later Fedora version.

Thank you for reporting this issue and we are sorry that we were not 
able to fix it before Fedora 31 is end of life. If you would still like 
to see this bug fixed and are able to reproduce it against a later version 
of Fedora, you are encouraged  change the 'version' to a later Fedora 
version prior this bug is closed as described in the policy above.

Although we aim to fix as many bugs as possible during every release's 
lifetime, sometimes those efforts are overtaken by events. Often a 
more recent Fedora release includes newer upstream software that fixes 
bugs or makes them obsolete.

Comment 11 Ben Cotton 2020-11-24 19:23:56 UTC
Fedora 31 changed to end-of-life (EOL) status on 2020-11-24. Fedora 31 is
no longer maintained, which means that it will not receive any further
security or bug fix updates. As a result we are closing this bug.

If you can reproduce this bug against a currently maintained version of
Fedora please feel free to reopen this bug against that version. If you
are unable to reopen this bug, please file a new report against the
current release. If you experience problems, please add a comment to this
bug.

Thank you for reporting this bug and we are sorry it could not be fixed.


Note You need to log in before you can comment on or make changes to this bug.