xserver/hw
Tj 728b54528d 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>
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1612>
2024-10-10 21:32:46 +00:00
..
kdrive drop obsolete HAVE_DIX_CONFIG_H 2024-10-10 13:38:31 +00:00
vfb drop obsolete HAVE_DIX_CONFIG_H 2024-10-10 13:38:31 +00:00
xfree86 xfree86: fbdevhw: fix pci detection on recent Linux 2024-10-10 21:32:46 +00:00
xnest Xnest: drop obsolete ifdef HAVE_XNEST_CONFIG_H 2024-10-10 13:38:31 +00:00
xquartz xquartz: drop unused code 2024-10-10 16:42:38 +00:00
xwayland os: unexport client id retrieval functions 2024-10-10 13:45:29 +00:00
xwin xwin: fix memleak on freeing pixmaps 2024-10-10 20:27:11 +00:00
meson.build Drop DMX DDX 2021-09-07 09:34:31 +00:00