xserver/hw
Tj e38c23e5b8 xfree86: fbdevhw: fix pci detection on recent Linux
Linux kernel v6.9 has changed the symlink to point to the parent device. This
breaks fbdev_open() detection logic. Change it to use the subsystem symlink
instead which will remain stable.

Kernel v6.8:

[    14.067] (II) fbdev_open() sysfs_path=/sys/class/graphics/fb0
[    14.067] (II) fbdev_open() buf=../../devices/platform/vesa-framebuffer.0/graphics/fb0

Kernel v6.9:

[    15.609] (II) fbdev_open() sysfs_path=/sys/class/graphics/fb0
[    15.609] (II) fbdev_open() buf=../../devices/pci0000:00/0000:00:01.0/vesa-framebuffer.0/graphics/fb0

Originally found in automated Debian ISO QA testing [0] and confirmed in Linux [1].

Tested on kernels v6.9.7 and v6.8.12

[0] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1075713
[1] https://lore.kernel.org/lkml/lLyvPFC_APGHNfyGNHRpQy5izBikkaTPOpHooZIT3fFAoJPquSI31ZMueA99XTdr8ysir3X7O7IMdc6za-0m79vr_claeparHhoRouVgHOI=@proton.me/

Fixes: https://gitlab.freedesktop.org/xorg/xserver/-/issues/1714
Signed-off-by: Tj <tj.iam.tj@proton.me>
Reviewed-by: Thomas Zimmermann <tzimmermann@suse.de>
Reviewed-by: Enrico Weigelt, metux IT consult <info@metux.net>
(cherry picked from commit 728b54528d)

Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1767>
2025-02-05 15:02:23 +01:00
..
kdrive ephyr: Fix incompatible pointer type build error 2024-05-12 08:00:00 +00:00
vfb mi: List extensions in usage message 2021-01-29 12:52:09 +00:00
xfree86 xfree86: fbdevhw: fix pci detection on recent Linux 2025-02-05 15:02:23 +01:00
xnest Xnest: fix broken exposure events 2024-10-12 00:46:34 +00:00
xquartz Xquartz: ProcAppleDRICreatePixmap needs to use unswapped length to send reply 2024-04-03 19:35:46 +03:00
xwin mi: List extensions in usage message 2021-01-29 12:52:09 +00:00
Makefile.am Drop XWayland DDX 2021-09-15 21:49:17 +03:00
meson.build Drop XWayland DDX 2021-09-15 21:49:17 +03:00