Arch Linux

Please read this before reporting a bug:
https://wiki.archlinux.org/title/Bug_reporting_guidelines

Do NOT report bugs when a package is just outdated, or it is in the AUR. Use the 'flag out of date' link on the package page, or the Mailing List.

REPEAT: Do NOT report bugs for outdated packages!
Tasklist

FS#53052 - [xorg-server] intel for gl + nvidia for cuda: Failed to initialize GLX extension

Attached to Project: Arch Linux
Opened by Paul Hollensen (pallegro) - Wednesday, 22 February 2017, 19:14 GMT
Last edited by Laurent Carlier (lordheavy) - Wednesday, 01 March 2017, 19:35 GMT
Task Type Bug Report
Category Packages: Extra
Status Closed
Assigned To No-one
Architecture x86_64
Severity High
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Description:
As of the recent round of graphics updates I no longer have graphics acceleration.
I use intel with the modesetting ddx for my desktop, an nvidia card exclusively for cuda (no nvidia-libgl or bumblebee), and no xorg.conf.
I tried using xf86-video-intel and various xorg.conf attempts (setting BusID for intel and nvidia devices, adding /usr/lib/nvidia/xorg to ModulePath, AllowEmptyInitialConfiguration on nvidia, etc) without success.
It appears Fedora has "one more patch for better integration with the nvidia binary driver" (http://pkgs.fedoraproject.org/cgit/rpms/xorg-x11-server.git/commit/?id=7d570e0164a3fba4c090002c22ce95b36867f7de) in addition to the ones we recently imported. Could this be related?

Additional info:
xorg-server 1.19.1-5
nvidia 378.13-2
mesa 17.0.0-1

Xorg.0.log:
[ 8.260] (EE) Failed to initialize GLX extension (Compatible NVIDIA X driver not found)

$ glxinfo
name of display: :0
Error: couldn't find RGB GLX visual or fbconfig
This task depends upon

Closed by  Laurent Carlier (lordheavy)
Wednesday, 01 March 2017, 19:35 GMT
Reason for closing:  Fixed
Comment by Laurent Carlier (lordheavy) - Friday, 24 February 2017, 22:27 GMT
Can you provide any logs? especially xorg log and system log
Comment by Tomáš Golembiovský (nyoxi) - Saturday, 25 February 2017, 21:48 GMT
I had the same issue. Removing file /usr/share/X11/xorg.conf.d/nvidia-drm-outputclass.conf installed by nvidia-utils helped.
Comment by Paul Hollensen (pallegro) - Sunday, 26 February 2017, 15:50 GMT
Thank you, Tomáš. Removing nvidia-drm-outputclass.conf does fix this issue.
Here's the "diff" of Xorg.0.log with and without the file.

With nvidia-drm-outputclass:
[ 9.264] (**) OutputClass "nvidia" ModulePath extended to "/usr/lib/nvidia/xorg,/usr/lib/xorg/modules"
[ 9.265] (II) LoadModule: "glx"
[ 9.266] (II) Loading /usr/lib/nvidia/xorg/libglx.so
[ 9.284] (II) Module glx: vendor="NVIDIA Corporation"
[ 9.284] compiled for 4.0.2, module version = 1.0.0
[ 9.284] Module class: X.Org Server Extension
[ 9.285] (II) NVIDIA GLX Module 378.13 Tue Feb 7 18:25:34 PST 2017
[ 9.285] (II) Applying OutputClass "nvidia" to /dev/dri/card0

[ 9.285] (==) Matched nvidia as autoconfigured driver 1

[ 9.287] (II) LoadModule: "nvidia"
[ 9.288] (II) Loading /usr/lib/xorg/modules/drivers/nvidia_drv.so
[ 9.290] (II) Module nvidia: vendor="NVIDIA Corporation"
[ 9.290] compiled for 4.0.2, module version = 1.0.0
[ 9.290] Module class: X.Org Video Driver

[ 9.293] (II) NVIDIA dlloader X Driver 378.13 Tue Feb 7 18:01:51 PST 2017
[ 9.293] (II) NVIDIA Unified Driver for all Supported NVIDIA GPUs

[ 9.471] (EE) Failed to initialize GLX extension (Compatible NVIDIA X driver not found)


Without nvidia-drm-outputclass:
[ 9.090] (II) LoadModule: "glx"
[ 9.091] (II) Loading /usr/lib/xorg/modules/extensions/libglx.so
[ 9.095] (II) Module glx: vendor="X.Org Foundation"
[ 9.095] compiled for 1.19.1, module version = 1.0.0
[ 9.095] ABI class: X.Org Server Extension, version 10.0

[ 9.293] (II) AIGLX: enabled GLX_MESA_copy_sub_buffer
[ 9.293] (II) AIGLX: enabled GLX_ARB_create_context
[ 9.293] (II) AIGLX: enabled GLX_ARB_create_context_profile
[ 9.293] (II) AIGLX: enabled GLX_EXT_create_context_es{,2}_profile
[ 9.293] (II) AIGLX: enabled GLX_INTEL_swap_event
[ 9.293] (II) AIGLX: enabled GLX_SGI_swap_control
[ 9.293] (II) AIGLX: enabled GLX_EXT_framebuffer_sRGB
[ 9.293] (II) AIGLX: enabled GLX_ARB_fbconfig_float
[ 9.293] (II) AIGLX: enabled GLX_EXT_fbconfig_packed_float
[ 9.293] (II) AIGLX: GLX_EXT_texture_from_pixmap backed by buffer objects
[ 9.293] (II) AIGLX: enabled GLX_ARB_create_context_robustness
[ 9.293] (II) AIGLX: Loaded and initialized i965
[ 9.293] (II) GLX: Initialized DRI2 GL provider for screen 0
Comment by Laurent Carlier (lordheavy) - Monday, 27 February 2017, 08:51 GMT
Ok, i've found the problem; it's mainly with bi-gpu system: the file nvidia-drm-outputclass.conf is not number prefixed, so is loaded at the end (after any 00-xxx.conf file) so the ModulePath is set first to /usr/lib/nvidia/xorg which break with intel GPU. I will rename nvidia-drm-outputclass.conf to 10-nvidia-drm-outputclass.conf with the next nvidia*-utils packages, so with a proper indexed config file (after 10) you can override the ModulePath from the nvidia package one.

Nvidia/bumblebee/optimus wiki should be updated.

Loading...