21.1.4: startx fails on start with undefined symbol in modesetting_drv.so and fbdev_drv.so
I've updated my own rpm package with X server to 21.1.4 (after that I've rebuild as well all packages with X Server drivers).
On testing those binaries I found that X Server cannot even start because it fails with uresolved symbols.
[root@chuwi-domek]# startx
xauth: file /root/.serverauth.8928 does not exist
X.Org X Server 1.21.1.4
X Protocol Version 11, Revision 0
Current Operating System: Linux chuwi-domek 5.10.21-200.fc33.x86_64 #1 SMP Mon Mar 8 00:24:40 UTC 2021 x86_64
Kernel command line: BOOT_IMAGE=(hd0,gpt3)/vmlinuz-5.10.21-200.fc33.x86_64 root=UUID=d476cc5d-445e-4260-9ee6-263971e37650 ro rootflags=subvol=fedora resume=UUID=64fc58e8-d90f-4235-b66e-ae87b548f320 nomodeset
Build ID:xorg-x11-server 21.1.4-2.fc35
Current version of pixman: 0.40.0
Before reporting problems, check http://wiki.x.org
to make sure that you have the latest version.
Markers: (--) probed, (**) from config file, (==) default setting,
(++) from command line, (!!) notice, (II) informational,
(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
(==) Log file: "/var/log/Xorg.0.log", Time: Mon Sep 5 04:12:15 2022
(==) Using config directory: "/etc/X11/xorg.conf.d"
(==) Using system config directory "/usr/share/X11/xorg.conf.d"
(EE)
Fatal server error:
(EE) no screens found(EE)
(EE)
Please consult the G2V Project support
at http://wiki.x.org
for help.
(EE) Please also check the log file at "/var/log/Xorg.0.log" for additional information.
(EE)
(EE) Server terminated with error (1). Closing log file.
xinit: giving up
xinit: unable to connect to X server: Connection refused
xinit: server error
/var/log/Xorg.0.log file content
[root@chuwi-domek ~]# cat /var/log/Xorg.0.log
[ 47738.159]
X.Org X Server 1.21.1.4
X Protocol Version 11, Revision 0
[ 47738.159] Current Operating System: Linux chuwi-domek 5.10.21-200.fc33.x86_64 #1 SMP Mon Mar 8 00:24:40 UTC 2021 x86_64
[ 47738.159] Kernel command line: BOOT_IMAGE=(hd0,gpt3)/vmlinuz-5.10.21-200.fc33.x86_64 root=UUID=d476cc5d-445e-4260-9ee6-263971e37650 ro rootflags=subvol=fedora resume=UUID=64fc58e8-d90f-4235-b66e-ae87b548f320 nomodeset
[ 47738.160] Build ID:xorg-x11-server 21.1.4-2.fc35
[ 47738.160] Current version of pixman: 0.40.0
[ 47738.160] Before reporting problems, check http://wiki.x.org
to make sure that you have the latest version.
[ 47738.160] Markers: (--) probed, (**) from config file, (==) default setting,
(++) from command line, (!!) notice, (II) informational,
(WW) warning, (EE) error, (NI) not implemented, (??) unknown.
[ 47738.160] (==) Log file: "/var/log/Xorg.0.log", Time: Mon Sep 5 04:12:15 2022
[ 47738.160] (==) Using config directory: "/etc/X11/xorg.conf.d"
[ 47738.160] (==) Using system config directory "/usr/share/X11/xorg.conf.d"
[ 47738.161] (==) No Layout section. Using the first Screen section.
[ 47738.161] (==) No screen section available. Using defaults.
[ 47738.161] (**) |-->Screen "Default Screen Section" (0)
[ 47738.161] (**) | |-->Monitor "<default monitor>"
[ 47738.161] (==) No monitor specified for screen "Default Screen Section".
Using a default monitor configuration.
[ 47738.161] (==) Automatically adding devices
[ 47738.161] (==) Automatically enabling devices
[ 47738.161] (==) Automatically adding GPU devices
[ 47738.161] (==) Automatically binding GPU devices
[ 47738.161] (==) Max clients allowed: 256, resource mask: 0x1fffff
[ 47738.161] (==) FontPath set to:
catalogue:/etc/X11/fontpath.d,
built-ins
[ 47738.161] (==) ModulePath set to "/usr/lib64/xorg/modules"
[ 47738.161] (II) The server relies on udev to provide the list of input devices.
If no devices become available, reconfigure udev or disable AutoAddDevices.
[ 47738.161] (II) Loader magic: 0x557ac2db5f00
[ 47738.161] (II) Module ABI versions:
[ 47738.161] X.Org ANSI C Emulation: 0.4
[ 47738.161] X.Org Video Driver: 25.2
[ 47738.161] X.Org XInput driver : 24.4
[ 47738.161] X.Org Server Extension : 10.0
[ 47738.163] (--) using VT number 2
[ 47738.163] (II) systemd-logind: logind integration requires -keeptty and -keeptty was not provided, disabling logind integration
[ 47738.170] (--) PCI:*(0@0:2:0) 8086:5a84:8086:2212 rev 11, Mem @ 0x91000000/16777216, 0x80000000/268435456, I/O @ 0x0000f000/64, BIOS @ 0x????????/131072
[ 47738.170] (II) LoadModule: "glx"
[ 47738.170] (II) Loading /usr/lib64/xorg/modules/extensions/libglx.so
[ 47738.174] (II) Module glx: vendor="X.Org Foundation"
[ 47738.174] compiled for 1.21.1.4, module version = 1.0.0
[ 47738.174] ABI class: X.Org Server Extension, version 10.0
[ 47738.174] (==) Matched modesetting as autoconfigured driver 0
[ 47738.174] (==) Matched fbdev as autoconfigured driver 1
[ 47738.174] (==) Matched vesa as autoconfigured driver 2
[ 47738.174] (==) Assigned the driver to the xf86ConfigLayout
[ 47738.174] (II) LoadModule: "modesetting"
[ 47738.174] (II) Loading /usr/lib64/xorg/modules/drivers/modesetting_drv.so
[ 47738.174] (EE) Failed to load /usr/lib64/xorg/modules/drivers/modesetting_drv.so: /usr/lib64/xorg/modules/drivers/modesetting_drv.so: undefined symbol: gbm_bo_get_plane_count
[ 47738.174] (EE) Failed to load module "modesetting" (loader failed, 0)
[ 47738.174] (II) LoadModule: "fbdev"
[ 47738.175] (II) Loading /usr/lib64/xorg/modules/drivers/fbdev_drv.so
[ 47738.175] (EE) Failed to load /usr/lib64/xorg/modules/drivers/fbdev_drv.so: /usr/lib64/xorg/modules/drivers/fbdev_drv.so: undefined symbol: fbdevHWSave
[ 47738.175] (EE) Failed to load module "fbdev" (loader failed, 0)
[ 47738.175] (II) LoadModule: "vesa"
[ 47738.175] (II) Loading /usr/lib64/xorg/modules/drivers/vesa_drv.so
[ 47738.175] (EE) Failed to load /usr/lib64/xorg/modules/drivers/vesa_drv.so: /usr/lib64/xorg/modules/drivers/vesa_drv.so: undefined symbol: VBESetModeParameters
[ 47738.175] (EE) Failed to load module "vesa" (loader failed, 0)
[ 47738.175] (EE) No drivers available.
[ 47738.175] (EE)
Fatal server error:
[ 47738.175] (EE) no screens found(EE)
[ 47738.175] (EE)
Please consult the G2V Project support
at http://wiki.x.org
for help.
[ 47738.175] (EE) Please also check the log file at "/var/log/Xorg.0.log" for additional information.
[ 47738.175] (EE)
[ 47738.176] (EE) Server terminated with error (1). Closing log file.
gbm_bo_get_plane_count
seems should come from mesa libgmb
[root@chuwi-domek ~]# objdump -x /usr/lib64/libgbm.so.1 | grep gbm_bo_get_plane_count
00000000000098d0 l .text 0000000000000000 .hidden .annobin_gbm_bo_get_plane_count.start
00000000000098dd l .text 0000000000000000 .hidden .annobin_gbm_bo_get_plane_count.end
0000000000003850 l .text 0000000000000000 .hidden .annobin_gbm_bo_get_plane_count.start.text.unlikely
0000000000003850 l .text 0000000000000000 .hidden .annobin_gbm_bo_get_plane_count.end.text.unlikely
00000000000098d0 g F .text 000000000000000d gbm_bo_get_plane_count
However looks like modesetting_drv.so is not linked with that library
[root@chuwi-domek ~]# ldd /usr/lib64/xorg/modules/drivers/modesetting_drv.so
linux-vdso.so.1 => linux-vdso.so.1 (0x00007ffd2fdea000)
libudev.so.1 => /lib64/libudev.so.1 (0x00007f2619f82000)
libc.so.6 => /lib64/libc.so.6 (0x00007f2619da7000)
/lib64/ld-linux-x86-64.so.2 => /lib64/ld-linux-x86-64.so.2 (0x00007f2619fd8000)