Xorg crashes after upgrading to F41 on Asahi

I upgraded to F41 on my M1 Asahi remix, but after the upgrade I don’t get a graphical login. So I investigated from the virtual terminal as root, this is what I found.

$ systemctl list-units --failed 
  UNIT                  LOAD   ACTIVE SUB    DESCRIPTION                   
● lightdm.service       loaded failed failed Light Display Manager
● plymouth-quit.service loaded failed failed Terminate Plymouth Boot Screen

I am running XFCE, so my login manager is ligthdm. I couldn’t find any thing in the journal, so I tried to start lightdm interactively with debug on. That told me X is failing:

[+0.02s] DEBUG: Launching process 2603: /usr/bin/X -core -noreset :0 -seat seat0 -auth /run/lightdm/root/:0 -nolisten tcp vt1 -novtswitch
[+0.02s] DEBUG: XServer 0: Waiting for ready signal from X server :0
[+0.02s] DEBUG: Acquired bus name org.freedesktop.DisplayManager
[+0.02s] DEBUG: Registering seat with bus path /org/freedesktop/DisplayManager/Seat0
[+0.02s] DEBUG: Loading users from org.freedesktop.Accounts
[+0.02s] DEBUG: User /org/freedesktop/Accounts/User1000 added
[+0.03s] DEBUG: Seat seat0 changes active session to 
[+0.24s] DEBUG: Process 2603 terminated with signal 6
[+0.24s] DEBUG: XServer 0: X server stopped

Looking at the Xorg log, I see the following:

[  2561.014] (II) LoadModule: "fbdev"
[  2561.014] (WW) Warning, couldn't open module fbdev
[  2561.014] (EE) Failed to load module "fbdev" (module does not exist, 0)
[  2561.014] (II) modesetting: Driver for Modesetting Kernel Drivers: kms
[  2561.032] (WW) Falling back to old probe method for modesetting
[  2561.043] (II) modeset(0): using default device
[  2561.060] (II) modeset(G0): using drv /dev/dri/card0
[  2561.060] (EE) 
Fatal server error:
[  2561.060] (EE) Cannot run in framebuffer mode. Please specify busIDs        for all framebuffer devices
[  2561.060] (EE) 
[  2561.060] (EE) 
Please consult the The X.Org Foundation support 
         at http://wiki.x.org
 for help. 
[  2561.060] (EE) Please also check the log file at "/var/log/Xorg.0.log" for additional information.
[  2561.060] (EE) 
[  2561.118] (EE) Server terminated with error (1). Closing log file.

I don’t quite understand the error. Any idea how to proceed to resolve this? Or is this a bug?

From Ask Fedora to Ask Asahi

Please try a supported Wayland session like KDE Plasma. If that works, it’s probably an Xorg regression. Since we don’t support native Xorg sessions, you’ll have to file that one upstream, though the native Xorg server is almost unmaintained at this point.

1 Like

I managed to fix it.
For some reason the X11 appledrm quirk that was present before has disappeared, even though it’s present in X11 upstream, having been present in Asahi in the past (PKGBUILDs/asahi-configs/30-modeset.conf at main · AsahiLinux/PKGBUILDs · GitHub) and having been merged a long time ago in Fedora (PR#14: resolve Xorg server DCP display issue (#2152414) - rpms/xorg-x11-server - src.fedoraproject.org).

You need to add the OutputSection referencing appledrm in /usr/share/X11/xorg.conf.d/10-quirks.conf :


Section "OutputClass"
        Identifier "appledrm"
        MatchDriver "apple"
        Driver "modesetting"
        Option "PrimaryGPU" "true"
EndSection

Looks like that patch was mistakenly dropped, I filed an issue here: 2326701 – 21.1.13 broke Apple Silicon systems due to mistakenly dropped patch

1 Like

Thanks both! That patch fixed it :slight_smile:

@marcan I’ve been on XFCE for more than 10 years, I’ve been dreading this moment when I’ve to move to something else because of its lack of Wayland support. I’ll start considering my options.