Description of problem: This issue affects 1. Apple Silicon devices M1/M2 systems 2. running Xorg 3. running the latest Asahi kernel https://github.com/AsahiLinux/linux/releases/tag/asahi-6.1-rc8-3 4. and the latest mesa drivers https://gitlab.freedesktop.org/asahi/mesa/-/tree/fixes/20221209 Although this mesa branch and some of the kernel components haven't been upstreamed yet -- they will be in the near future. Version-Release number of selected component (if applicable): xorg: 1.20.14-9 Requesting that the following xorg config: https://github.com/AsahiLinux/PKGBUILDs/blob/main/asahi-configs/30-modeset.conf be added to the /usr/share/X11/xorg.conf.d/10-quirks.conf file in this RPM This issue only affects Xorg and not Wayland. Speaking with the developers, the issue is that xorg is not "smart enough" to recognize render-only devices. xorg should be able to recognize that the gpu driver does not have a display as an output (I believe that is referred to as kmsro) This xorg config is needed to tell xorg to use DCP (Apple's display coprocessor) for output instead. if I start lightdm without the above referenced xorg config in place. xorg crashes and I see the following in the system log: ...... Module Xorg with build-id 32bc942b0a60e4dd9077251bdfc0588b1d213f35 Metadata for module Xorg owned by FDO found: { "type" : "rpm", "name" : "xorg-x11-server", "version" : "1.20.14-9.fc37", "architecture" : "aarch64", "osCpe" : "cpe:/o:fedoraproject:fedora:37" } Stack trace of thread 1212: #0 0x0000fffeff826c18 __pthread_kill_implementation (libc.so.6 + 0x86c18) #1 0x007dfffeff7dee00 n/a (n/a + 0x0) #2 0x007dfffeff7dee00 n/a (n/a + 0x0) #3 0x0055fffeff7cb284 n/a (n/a + 0x0) #4 0x0019aaaae655fa20 n/a (n/a + 0x0) #5 0x006aaaaae6567c44 n/a (n/a + 0x0) #6 0x004eaaaae645302c n/a (n/a + 0x0) #7 0x0032aaaae63f9dd0 n/a (n/a + 0x0) #8 0x0051fffeff7cb588 n/a (n/a + 0x0) #9 0x001bfffeff7cb660 n/a (n/a + 0x0) #10 0x000aaaaae63faa30 n/a (n/a + 0x0) ELF object biXorg.0.lognary architecture: AARCH64 Dec 11 18:20:51 fedora abrt-notification[1247]: [🡕] Process 1166 (Xorg) crashed in __pthread_kill_implementation() Dec 11 18:20:51 fedora systemd[1]: Failed to start lightdm.service - Light Display Manager. # And this in the Xorg.0.log [ 8.395] (II) Module fbdev: vendor="X.Org Foundation" [ 8.395] compiled for 1.20.14, module version = 0.5.0 [ 8.395] Module class: X.Org Video Driver [ 8.395] ABI class: X.Org Video Driver, version 24.1 [ 8.395] (II) modesetting: Driver for Modesetting Kernel Drivers: kms [ 8.395] (II) FBDEV: driver for framebuffer: fbdev [ 8.395] (WW) Falling back to old probe method for modesetting [ 8.395] (EE) open /dev/dri/card0: No such file or directory [ 8.395] (WW) Falling back to old probe method for fbdev [ 8.395] (II) Loading sub module "fbdevhw" [ 8.395] (II) LoadModule: "fbdevhw" [ 8.395] (II) Loading /usr/lib64/xorg/modules/libfbdevhw.so [ 8.395] (II) Module fbdevhw: vendor="X.Org Foundation" [ 8.395] compiled for 1.20.14, module version = 0.0.2 [ 8.395] ABI class: X.Org Video Driver, version 24.1 [ 8.395] (II) FBDEV(0): using default device [ 8.410] (II) modeset(G0): using drv /dev/dri/card2 [ 8.410] (EE) Fatal server error: [ 8.410] (EE) Cannot run in framebuffer mode. Please specify busIDs for all framebuffer devices [ 8.410] (EE) [ 8.410] (EE) Please consult the The X.Org Foundation support at http://wiki.x.org for help. [ 8.410] (EE) Please also check the log file at "/var/log/Xorg.0.log" for additional information. [ 8.410] (EE) [ 8.462] (EE) Server terminated with error (1). Closing log file. With the xorg config in place. Everything works perfectly.
(In reply to Leif Liddy from comment #0) > Description of problem: > This issue affects > 1. Apple Silicon devices M1/M2 systems > 2. running Xorg > 3. running the latest Asahi kernel > https://github.com/AsahiLinux/linux/releases/tag/asahi-6.1-rc8-3 > 4. and the latest mesa drivers https://gitlab.freedesktop.org/asahi/mesa/-/tree/fixes/20221209 So that means the issue cannot occur with the standard kernel and Mesa which ship with Fedora? If that's the case, what is the point of changing the configuration unless we actually add support for that hardware in Fedora itself?
> If that's the case, what is the point of changing the configuration unless we actually add support for that hardware in Fedora itself? The Asahi SIG (https://fedoraproject.org/wiki/SIGs/Asahi) is in the process of doing precisely that. The approach we're taking is to upstream support into Fedora as much as possible (e.g. with m1n1, xkeyboard-config, etc.), and at the same time keep a handful of downstream components in copr for ease of development (as e.g. not all mesa changes are suitable for upstreaming at this time, but they will in the near to medium future) and for use in an upcoming Fedora Remix. In this case, the quirk shouldn't have any side effects, and it's a small enough change that IMO it makes sense to fix it directly in the Fedora package.
Yup, as Davide said, we have been enabling support for this hardware in Fedora (https://gitlab.com/cki-project/kernel-ark/-/merge_requests/1974). All of this will be eventually upstreamed and enabled in Fedora. This self-contained quirk fix would be one less package we have to fork in Fedora Asahi, the main two packages we fork at present are the kernel and mesa.
Thanks for the explanation! I wonder if it would be wiser to actually submit that upstream directly (https://gitlab.freedesktop.org/xorg/xserver/-/blob/master/config/10-quirks.conf) and backport the change downstream in Fedora.
Good idea! I'm gonna submit that now
Upstream MR submitted: https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1021
Looks like the upstream merge request was accepted, so can we get this backported into Fedora's package now?
(In reply to Neal Gompa from comment #7) > Looks like the upstream merge request was accepted, so can we get this > backported into Fedora's package now? Ideally, https://src.fedoraproject.org/rpms/xorg-x11-server/pull-request/11 would need to be updated accordingly, i.e.: 1/ Cherry-pick the fix from master in xserver upstream 2/ Add and apply the patch to the xorg-x11-server package
I screwed that last PR up trying to rebase it. Here's a new one: https://src.fedoraproject.org/rpms/xorg-x11-server/pull-request/13
Merged in rawhide and built. https://bodhi.fedoraproject.org/updates/FEDORA-2023-5a74a2c134
Can we also get this for F37 too?
Yup, I just submitted a PR for that. https://src.fedoraproject.org/rpms/xorg-x11-server/pull-request/14
(In reply to Leif Liddy from comment #12) > Yup, I just submitted a PR for that. > https://src.fedoraproject.org/rpms/xorg-x11-server/pull-request/14 Thanks! However I shall close the PR, it is not needed anymore as I have merged the rawhide branch into the f37 branch, so that we don't have diverging branches. (FTR, in case someone wonders, it was safe to merge rawhide because @whot wrapped the byteswap patch meant for Fedora 38 into a "if %{fedora} >= 38") The build is here: https://koji.fedoraproject.org/koji/taskinfo?taskID=96206626
FEDORA-2023-c7dc682a77 has been submitted as an update to Fedora 37. https://bodhi.fedoraproject.org/updates/FEDORA-2023-c7dc682a77
FEDORA-2023-c7dc682a77 has been pushed to the Fedora 37 stable repository. If problem still persists, please make note of it in this bug report.