Results 1 to 7 of 7

Thread: Leap 15 ignores indirect GLX request for NVIDIA driver

  1. #1

    Default Leap 15 ignores indirect GLX request for NVIDIA driver

    Hi all,

    I have a problem with my workstation that I can't seem to figure out. I need to connect via SSH to a remote machine and launch a couple of graphical applications that use OpenGL. The remote machines are running CentOS 7 and for whatever reason this only tends to work with Indirect GLX (maybe because I have an NVIDIA card in my workstation and they have integrated Intel graphics, but I don't really know). Anyway, the simple solution was always just to activate indirect GLX and render locally.

    As another complication, my GeForce GT 610 card never worked with OpenSuSE nouveau or packaged nvidia drivers from the repos, so I always have to install the proprietary NVIDIA driver. This is a bit of a pain but I can live with that.

    The thing which is driving me crazy, though, is that for a while now (spanning 2 OpenSuSE releases, several kernel releases and a couple of different NVIDIA drivers, all with the same symptoms) I can't get indirect GLX to work anymore. I really need it at the moment but it seems like a daft reason to ditch an otherwise working system. Here's how I try to enable it in xorg.conf (I also tried xorg.conf.d):

    Code:
    Section "ServerLayout"
        Identifier     "Layout0"
        Screen      0  "Screen0" 0 0
        InputDevice    "Keyboard0" "CoreKeyboard"
        InputDevice    "Mouse0" "CorePointer"
    EndSection
    
    Section "Files"
    EndSection
    
    Section "ServerFlags"
        Option         "AllowIndirectGLX" "True"
        Option         "IndirectGLX" "True"
    EndSection
    
    Section "InputDevice"
    
        # generated from default
        Identifier     "Mouse0"
        Driver         "mouse"
        Option         "Protocol" "auto"
        Option         "Device" "/dev/psaux"
        Option         "Emulate3Buttons" "no"
        Option         "ZAxisMapping" "4 5"
    EndSection
    
    Section "InputDevice"
    
        # generated from default
        Identifier     "Keyboard0"
        Driver         "kbd"
    EndSection
    
    Section "Monitor"
        Identifier     "Monitor0"
        VendorName     "Unknown"
        ModelName      "Unknown"
        HorizSync       28.0 - 33.0
        VertRefresh     43.0 - 72.0
        Option         "DPMS"
    EndSection
    
    Section "Device"
        Identifier     "Device0"
        Driver         "nvidia"
        VendorName     "NVIDIA Corporation"
        Option         "AllowIndirectGLX" "True"
        Option         "IndirectGLX" "True"
    EndSection
    
    Section "Screen"
        Identifier     "Screen0"
        Device         "Device0"
        Monitor        "Monitor0"
        DefaultDepth    24
        Option         "AllowIndirectGLX" "True"
        Option         "IndirectGLX" "True"
        SubSection     "Display"
            Depth       24
        EndSubSection
    EndSection
    I added the GLX options in various different places for testing, in this example they're just added everywhere for good measure.

    Xorg.0.log shows that the options are read and recognized:
    Code:
    [    52.879]
    X.Org X Server 1.18.3
    Release Date: 2016-04-04
    [    52.879] X Protocol Version 11, Revision 0
    [    52.879] Build Operating System: openSUSE SUSE LINUX
    [    52.879] Current Operating System: Linux pc-haendel 4.4.155-68-default #1 SMP Tue Sep 11 13:07:19 UTC 2018 (4ecc783) x86_64
    [    52.879] Kernel command line: BOOT_IMAGE=/vmlinuz-4.4.155-68-default root=UUID=0d205685-e44e-4d9f-bfd3-182262b2fc9b resume=/dev/disk/by-id/ata-WDC_WD5003ABYZ-011FA0_WD-WMAYP0M7RS30-part2 quiet showopts
    [    52.879] Build Date: 14 March 2018  10:01:54PM
    [    52.879]
    [    52.879] Current version of pixman: 0.34.0
    [    52.879]    Before reporting problems, check http://wiki.x.org
            to make sure that you have the latest version.
    [    52.879] Markers: (--) probed, (**) from config file, (==) default setting,
            (++) from command line, (!!) notice, (II) informational,
            (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
    [    52.879] (==) Log file: "/var/log/Xorg.0.log", Time: Fri Sep 21 14:47:41 2018
    [    53.053] (==) Using config file: "/etc/X11/xorg.conf"
    [    53.053] (==) Using config directory: "/etc/X11/xorg.conf.d"
    [    53.053] (==) Using system config directory "/usr/share/X11/xorg.conf.d"
    [    53.341] (==) ServerLayout "Layout0"
    [    53.341] (**) |-->Screen "Screen0" (0)
    [    53.341] (**) |   |-->Monitor "Monitor0"
    [    53.341] (**) |   |-->Device "Device0"
    [    53.341] (**) |-->Input Device "Keyboard0"
    [    53.341] (**) |-->Input Device "Mouse0"
    [    53.341] (**) Option "IndirectGLX" "True"
    [    53.341] (==) Automatically adding devices
    [    53.341] (==) Automatically enabling devices
    [    53.341] (==) Automatically adding GPU devices
    All looks good so far my xorg.conf file was read and understood, but then:

    Code:
    [    53.418] (II) LoadModule: "glx"
    [    53.466] (II) Loading /usr/lib64/xorg/modules/extensions/libglx.so
    [    54.333] (II) Module glx: vendor="NVIDIA Corporation"
    [    54.333]    compiled for 4.0.2, module version = 1.0.0
    [    54.333]    Module class: X.Org Server Extension
    [    54.352] (II) NVIDIA GLX Module  390.77  Tue Jul 10 22:05:43 PDT 2018
    [    54.373] (II) LoadModule: "nvidia"
    [    54.374] (II) Loading /usr/lib64/xorg/modules/drivers/nvidia_drv.so
    [    54.458] (II) Module nvidia: vendor="NVIDIA Corporation"
    [    54.458]    compiled for 4.0.2, module version = 1.0.0
    [    54.458]    Module class: X.Org Video Driver
    [    54.471] (II) NVIDIA dlloader X Driver  390.77  Tue Jul 10 21:41:24 PDT 2018
    [    54.471] (II) NVIDIA Unified Driver for all Supported NVIDIA GPUs
    [    54.471] (II) Loading sub module "fb"
    [    54.471] (II) LoadModule: "fb"
    [    54.471] (II) Loading /usr/lib64/xorg/modules/libfb.so
    [    54.487] (II) Module fb: vendor="X.Org Foundation"
    [    54.487]    compiled for 1.18.3, module version = 1.0.0
    [    54.487]    ABI class: X.Org ANSI C Emulation, version 0.4
    [    54.487] (II) Loading sub module "wfb"
    [    54.487] (II) LoadModule: "wfb"
    [    54.494] (II) Loading /usr/lib64/xorg/modules/libwfb.so
    [    54.512] (II) Module wfb: vendor="X.Org Foundation"
    [    54.512]    compiled for 1.18.3, module version = 1.0.0
    [    54.512]    ABI class: X.Org ANSI C Emulation, version 0.4
    ...
    [    55.373] (==) NVIDIA(0): No modes were requested; the default mode "nvidia-auto-select"
    [    55.373] (==) NVIDIA(0):     will be used as the requested mode.
    [    55.373] (==) NVIDIA(0):
    [    55.373] (II) NVIDIA(0): Validated MetaModes:
    [    55.373] (II) NVIDIA(0):     "DFP-0:nvidia-auto-select,DFP-2:nvidia-auto-select"
    [    55.373] (II) NVIDIA(0): Virtual screen size determined to be 3360 x 1050
    [    55.376] (--) NVIDIA(0): DPI set to (90, 88); computed from "UseEdidDpi" X config
    [    55.376] (--) NVIDIA(0):     option
    [    55.376] (--) Depth 24 pixmap format is 32 bpp
    [    55.377] (II) NVIDIA: Using 6144.00 MB of virtual memory for indirect memory
    [    55.377] (II) NVIDIA:     access.
    [    55.379] (II) NVIDIA(0): ACPI: failed to connect to the ACPI event daemon; the daemon
    [    55.379] (II) NVIDIA(0):     may not be running or the "AcpidSocketPath" X
    [    55.379] (II) NVIDIA(0):     configuration option may not be set correctly.  When the
    [    55.379] (II) NVIDIA(0):     ACPI event daemon is available, the NVIDIA X driver will
    [    55.379] (II) NVIDIA(0):     try to use it to receive ACPI event notifications.  For
    [    55.379] (II) NVIDIA(0):     details, please see the "ConnectToAcpid" and
    [    55.379] (II) NVIDIA(0):     "AcpidSocketPath" X configuration options in Appendix B: X
    [    55.379] (II) NVIDIA(0):     Config Options in the README.
    [    55.397] (II) NVIDIA(0): Setting mode "DFP-0:nvidia-auto-select,DFP-2:nvidia-auto-select"
    [    55.520] (==) NVIDIA(0): Disabling shared memory pixmaps
    [    55.520] (==) NVIDIA(0): Backing store enabled
    [    55.520] (==) NVIDIA(0): Silken mouse enabled
    [    55.520] (**) NVIDIA(0): DPMS enabled
    [    55.520] (WW) NVIDIA(0): Option "AllowIndirectGLX" is not used
    [    55.520] (WW) NVIDIA(0): Option "IndirectGLX" is not used
    [    55.520] (II) Loading sub module "dri2"
    [    55.520] (II) LoadModule: "dri2"
    [    55.520] (II) Module "dri2" already built-in
    [    55.520] (II) NVIDIA(0): [DRI2] Setup complete
    [    55.520] (II) NVIDIA(0): [DRI2]   VDPAU driver: nvidia
    [    55.520] (--) RandR disabled
    [    55.524] (II) Initializing extension GLX
    [    55.524] (II) Indirect GLX disabled.
    [    56.121] (II) config/udev: Adding input device Power Button (/dev/input/event1)
    My options weren't used (maybe this is one of the "superfluous" entries, though), and then Indirect GLX is disabled when the GLX extension is initialized. I can't figure out why and I don't see any explanation here, or did I miss something? glxinfo confirms that I'm using direct rendering by default and my X-applications don't work via SSH:

    Code:
    $ glxinfo 
    name of display: :1
    display: :1  screen: 0
    direct rendering: Yes
    server glx vendor string: NVIDIA Corporation
    server glx version string: 1.4
    Code:
    $ ssh -Y host@domain
    $ glxinfo
    libGL error: No matching fbConfigs or visuals found
    libGL error: failed to load driver: swrast
    Error: couldn't find RGB GLX visual or fbconfig
    name of display: localhost:10.0
    
    228 GLX Visuals
    Also, why is GLX using NVIDIA 390.77 when I installed 390.87:

    Code:
    /var/log/Xorg.0.log
    [    53.418] (II) LoadModule: "glx"
    [    53.466] (II) Loading /usr/lib64/xorg/modules/extensions/libglx.so
    [    54.333] (II) Module glx: vendor="NVIDIA Corporation"
    [    54.333]    compiled for 4.0.2, module version = 1.0.0
    [    54.333]    Module class: X.Org Server Extension
    [    54.352] (II) NVIDIA GLX Module  390.77  Tue Jul 10 22:05:43 PDT 2018
    [    54.373] (II) LoadModule: "nvidia"
    [    54.374] (II) Loading /usr/lib64/xorg/modules/drivers/nvidia_drv.so
    [    54.458] (II) Module nvidia: vendor="NVIDIA Corporation"
    [    54.458]    compiled for 4.0.2, module version = 1.0.0
    [    54.458]    Module class: X.Org Video Driver
    [    54.471] (II) NVIDIA dlloader X Driver  390.77  Tue Jul 10 21:41:24 PDT 2018
    [    54.471] (II) NVIDIA Unified Driver for all Supported NVIDIA GPUs
    vs:
    Code:
    $ modinfo nvidia
    filename:       /lib/modules/4.12.14-lp150.12.16-default/kernel/drivers/video/nvidia.ko
    alias:          char-major-195-*
    version:        390.87
    supported:      external
    license:        NVIDIA
    suserelease:    openSUSE Leap 15.0
    srcversion:     9680830EEE0BAB392576E99
    alias:          pci:v000010DEd00000E00sv*sd*bc04sc80i00*
    alias:          pci:v000010DEd*sv*sd*bc03sc02i00*
    alias:          pci:v000010DEd*sv*sd*bc03sc00i00*
    depends:        ipmi_msghandler
    retpoline:      Y
    vermagic:       4.12.14-lp150.12.16-default SMP mod_unload modversions retpoline

    Has anyone got any ideas? I've gone about as far as Google can take me...

  2. #2
    Join Date
    Mar 2011
    Location
    Sauerland
    Posts
    3,730

    Default AW: Leap 15 ignores indirect GLX request for NVIDIA driver

    Poste:
    Code:
    zypper se -si nvidia xorg-x11-server
    because:
    X.Org X Server 1.18.3
    Release Date: 2016-04-04
    and here:
    Code:
    i+ | xorg-x11-server        | Paket | 1.19.6-lp150.6.1   | x86_64 | openSUSE-Leap-15.0-Oss
    cat /var/log/Xorg.0.log
    [ 23.367] (--) Log file renamed from "/var/log/Xorg.pid-1957.log" to "/var/log/Xorg.0.log"
    [ 23.367]
    X.Org X Server 1.19.6
    Release Date: 2017-12-20

  3. #3

    Default Re: Leap 15 ignores indirect GLX request for NVIDIA driver

    Thanks for taking a look! Is this what you meant?

    Code:
    $ zypper se -si nvidia xorg-x11-server
    
    S  | Name                  | Type    | Version          | Arch   | Repository       
    ---+-----------------------+---------+------------------+--------+------------------
    i+ | xorg-x11-server       | package | 1.19.6-lp150.6.1 | x86_64 | openSUSE-15.0-OSS
    i  | xorg-x11-server-extra | package | 1.19.6-lp150.6.1 | x86_64 | openSUSE-15.0-OSS
    Don't know why I have "X.Org X Server 1.18.3" in the log, "X -version" gives:

    Code:
    $ X -version
    
    X.Org X Server 1.19.6
    Release Date: 2017-12-20
    X Protocol Version 11, Revision 0
    Build Operating System: openSUSE SUSE LINUX
    Current Operating System: Linux pc-haendel 4.12.14-lp150.12.16-default #1 SMP Tue Aug 14 17:51:27 UTC 2018 (28574e6) x86_64
    Kernel command line: BOOT_IMAGE=/vmlinuz-4.12.14-lp150.12.16-default root=UUID=0d205685-e44e-4d9f-bfd3-182262b2fc9b resume=/dev/disk/by-id/ata-WDC_WD5003ABYZ-011FA0_WD-WMAYP0M7RS30-part2 quiet showopts
    Build Date: 17 April 2018  12:00:00PM
     
    Current version of pixman: 0.34.0
            Before reporting problems, check http://wiki.x.org
            to make sure that you have the latest version.
    Maybe some inconsistency after upgrading, rather than reinstalling to Leap 15? Like I said I had the same problem with 43, though... Any ideas?

  4. #4
    Join Date
    Mar 2011
    Location
    Sauerland
    Posts
    3,730

    Default AW: Leap 15 ignores indirect GLX request for NVIDIA driver

    So nobody knows where your Xorg.0.log is........
    Code:
    ls -al /var/log | grep -i xorg
    Last edited by Sauerland; 24-Sep-2018 at 04:59.

  5. #5

    Default Re: Leap 15 ignores indirect GLX request for NVIDIA driver

    Sorry, my mistake

    Since the upgrade on Friday X apparently stopped writing to /var/log/Xorg.0.log. I found the new log in /var/lib/gdm/.local/share/xorg/Xorg.0.log:

    Code:
    [    59.815] (--) Log file renamed from "/var/lib/gdm/.local/share/xorg/Xorg.pid-2463.log" to "/var/lib/gdm/.local/share/xorg/Xorg.0.log"
    [    59.836]
    X.Org X Server 1.19.6
    Release Date: 2017-12-20
    [    59.837] X Protocol Version 11, Revision 0
    [    59.837] Build Operating System: openSUSE SUSE LINUX
    [    59.837] Current Operating System: Linux pc-haendel 4.12.14-lp150.12.16-default #1 SMP Tue Aug 14 17:51:27 UTC 2018 (28574e6) x86_64
    [    59.837] Kernel command line: BOOT_IMAGE=/vmlinuz-4.12.14-lp150.12.16-default root=UUID=0d205685-e44e-4d9f-bfd3-182262b2fc9b resume=/dev/disk/by-id/ata-WDC_WD5003ABYZ-011FA0_WD-WMAYP0M7RS30-part2 quiet showopts
    [    59.837] Build Date: 17 April 2018  12:00:00PM
    [    59.837]
    [    59.837] Current version of pixman: 0.34.0
    [    59.837]    Before reporting problems, check http://wiki.x.org
            to make sure that you have the latest version.
    [    59.837] Markers: (--) probed, (**) from config file, (==) default setting,
            (++) from command line, (!!) notice, (II) informational,
            (WW) warning, (EE) error, (NI) not implemented, (??) unknown.
    [    59.837] (==) Log file: "/var/lib/gdm/.local/share/xorg/Xorg.0.log", Time: Mon Sep 24 10:29:40 2018
    [    59.850] (==) Using config file: "/etc/X11/xorg.conf"
    [    59.850] (==) Using config directory: "/etc/X11/xorg.conf.d"
    [    59.850] (==) Using system config directory "/usr/share/X11/xorg.conf.d"
    [    59.928] (==) ServerLayout "Layout0"
    [    59.928] (**) |-->Screen "Screen0" (0)
    [    59.928] (**) |   |-->Monitor "Monitor0"
    [    59.928] (**) |   |-->Device "Device0"
    [    59.928] (**) |-->Input Device "Keyboard0"
    [    59.928] (**) |-->Input Device "Mouse0"
    [    59.928] (**) Option "IndirectGLX" "True"
    [    59.928] (==) Automatically adding devices
    [    59.928] (==) Automatically enabling devices
    [    59.928] (==) Automatically adding GPU devices
    [    59.928] (==) Max clients allowed: 256, resource mask: 0x1fffff
    [    59.995] (WW) The directory "/usr/share/fonts/misc/sgi" does not exist.
    [    59.995]    Entry deleted from font path.
    [    60.019] (==) FontPath set to:
            /usr/share/fonts/misc:unscaled,
            /usr/share/fonts/Type1/,
            /usr/share/fonts/100dpi:unscaled,
            /usr/share/fonts/75dpi:unscaled,
            /usr/share/fonts/ghostscript/,
            /usr/share/fonts/cyrillic:unscaled,
            /usr/share/fonts/truetype/,
            built-ins
    [    60.019] (==) ModulePath set to "/usr/lib64/xorg/modules"
    [    60.020] (**) Extension "XFree86-DGA" is disabled
    [    60.020] (WW) Hotplugging is on, devices using drivers 'kbd', 'mouse' or 'vmmouse' will be disabled.
    [    60.020] (WW) Disabling Keyboard0
    [    60.020] (WW) Disabling Mouse0
    [    60.020] (II) Loader magic: 0x560833a8cd00
    [    60.020] (II) Module ABI versions:
    [    60.020]    X.Org ANSI C Emulation: 0.4
    [    60.020]    X.Org Video Driver: 23.0
    [    60.020]    X.Org XInput driver : 24.1
    [    60.020]    X.Org Server Extension : 10.0
    [    60.021] (++) using VT number 7
    [    60.025] (II) systemd-logind: took control of session /org/freedesktop/login1/session/c1
    [    60.025] (II) xfree86: Adding drm device (/dev/dri/card0)
    [    60.026] (II) systemd-logind: got fd for /dev/dri/card0 226:0 fd 12 paused 0
    [    60.030] (--) PCI:*(0:1:0:0) 10de:104a:19da:5215 rev 161, Mem @ 0xda000000/16777216, 0xd0000000/134217728, 0xd8000000/33554432, I/O @ 0x00002000/128, BIOS @ 0x????????/131072
    [    60.030] (II) LoadModule: "glx"
    [    60.031] (II) Loading /usr/lib64/xorg/modules/extensions/libglx.so
    [    60.355] (II) Module glx: vendor="NVIDIA Corporation"
    [    60.355]    compiled for 4.0.2, module version = 1.0.0
    [    60.355]    Module class: X.Org Server Extension
    [    60.368] (II) NVIDIA GLX Module  390.87  Tue Aug 21 16:10:56 PDT 2018
    [    60.378] (II) LoadModule: "nvidia"
    [    60.378] (II) Loading /usr/lib64/xorg/modules/drivers/nvidia_drv.so
    [    60.428] (II) Module nvidia: vendor="NVIDIA Corporation"
    [    60.428]    compiled for 4.0.2, module version = 1.0.0
    [    60.428]    Module class: X.Org Video Driver
    [    60.436] (II) NVIDIA dlloader X Driver  390.87  Tue Aug 21 15:44:49 PDT 2018
    [    60.436] (II) NVIDIA Unified Driver for all Supported NVIDIA GPUs
    [    60.436] xf86EnableIOPorts: failed to set IOPL for I/O (Operation not permitted)
    [    60.436] (II) systemd-logind: releasing fd for 226:0
    [    60.437] (II) Loading sub module "fb"
    [    60.437] (II) LoadModule: "fb"
    [    60.438] (II) Loading /usr/lib64/xorg/modules/libfb.so
    [    60.450] (II) Module fb: vendor="X.Org Foundation"
    [    60.450]    compiled for 1.19.6, module version = 1.0.0
    [    60.450]    ABI class: X.Org ANSI C Emulation, version 0.4
    [    60.450] (II) Loading sub module "wfb"
    [    60.450] (II) LoadModule: "wfb"
    [    60.465] (II) Loading /usr/lib64/xorg/modules/libwfb.so
    [    60.478] (II) Module wfb: vendor="X.Org Foundation"
    [    60.478]    compiled for 1.19.6, module version = 1.0.0
    [    60.478]    ABI class: X.Org ANSI C Emulation, version 0.4
    [    60.478] (II) Loading sub module "ramdac"
    [    60.478] (II) LoadModule: "ramdac"
    [    60.478] (II) Module "ramdac" already built-in
    [    60.497] (WW) VGA arbiter: cannot open kernel arbiter, no multi-card support
    [    60.497] (**) NVIDIA(0): Depth 24, (--) framebuffer bpp 32
    [    60.497] (==) NVIDIA(0): RGB weight 888
    [    60.497] (==) NVIDIA(0): Default visual is TrueColor
    [    60.497] (==) NVIDIA(0): Using gamma correction (1.0, 1.0, 1.0)
    [    60.497] (**) NVIDIA(0): Enabling 2D acceleration
    [    61.317] (--) NVIDIA(0): Valid display device(s) on GPU-0 at PCI:1:0:0
    [    61.317] (--) NVIDIA(0):     CRT-0
    [    61.317] (--) NVIDIA(0):     CRT-1
    [    61.317] (--) NVIDIA(0):     DFP-0 (boot)
    [    61.317] (--) NVIDIA(0):     DFP-1
    [    61.317] (--) NVIDIA(0):     DFP-2
    [    61.319] (II) NVIDIA(0): NVIDIA GPU GeForce GT 610 (GF119) at PCI:1:0:0 (GPU-0)
    [    61.319] (--) NVIDIA(0): Memory: 1048576 kBytes
    [    61.319] (--) NVIDIA(0): VideoBIOS: 75.19.56.00.00
    [    61.319] (II) NVIDIA(0): Detected PCI Express Link width: 16X
    [    61.325] (--) NVIDIA(GPU-0): CRT-0: disconnected
    [    61.325] (--) NVIDIA(GPU-0): CRT-0: 400.0 MHz maximum pixel clock
    [    61.325] (--) NVIDIA(GPU-0):
    [    61.332] (--) NVIDIA(GPU-0): CRT-1: disconnected
    [    61.332] (--) NVIDIA(GPU-0): CRT-1: 400.0 MHz maximum pixel clock
    [    61.332] (--) NVIDIA(GPU-0):
    [    61.345] (--) NVIDIA(GPU-0): DELL P2213 (DFP-0): connected
    [    61.345] (--) NVIDIA(GPU-0): DELL P2213 (DFP-0): Internal TMDS
    [    61.345] (--) NVIDIA(GPU-0): DELL P2213 (DFP-0): 330.0 MHz maximum pixel clock
    [    61.345] (--) NVIDIA(GPU-0):
    [    61.345] (--) NVIDIA(GPU-0): DFP-1: disconnected
    [    61.345] (--) NVIDIA(GPU-0): DFP-1: Internal TMDS
    [    61.345] (--) NVIDIA(GPU-0): DFP-1: 165.0 MHz maximum pixel clock
    [    61.345] (--) NVIDIA(GPU-0):
    [    61.359] (--) NVIDIA(GPU-0): DELL P2213 (DFP-2): connected
    [    61.359] (--) NVIDIA(GPU-0): DELL P2213 (DFP-2): Internal TMDS
    [    61.359] (--) NVIDIA(GPU-0): DELL P2213 (DFP-2): 165.0 MHz maximum pixel clock
    [    61.359] (--) NVIDIA(GPU-0):
    [    61.364] (==) NVIDIA(0):
    [    61.364] (==) NVIDIA(0): No modes were requested; the default mode "nvidia-auto-select"
    [    61.364] (==) NVIDIA(0):     will be used as the requested mode.
    [    61.364] (==) NVIDIA(0):
    [    61.364] (II) NVIDIA(0): Validated MetaModes:
    [    61.364] (II) NVIDIA(0):     "DFP-0:nvidia-auto-select,DFP-2:nvidia-auto-select"
    [    61.364] (II) NVIDIA(0): Virtual screen size determined to be 3360 x 1050
    [    61.367] (--) NVIDIA(0): DPI set to (90, 88); computed from "UseEdidDpi" X config
    [    61.367] (--) NVIDIA(0):     option
    [    61.367] (--) Depth 24 pixmap format is 32 bpp
    [    61.367] (II) NVIDIA: Using 6144.00 MB of virtual memory for indirect memory
    [    61.367] (II) NVIDIA:     access.
    [    61.370] (II) NVIDIA(0): ACPI: failed to connect to the ACPI event daemon; the daemon
    [    61.370] (II) NVIDIA(0):     may not be running or the "AcpidSocketPath" X
    [    61.370] (II) NVIDIA(0):     configuration option may not be set correctly.  When the
    [    61.370] (II) NVIDIA(0):     ACPI event daemon is available, the NVIDIA X driver will
    [    61.370] (II) NVIDIA(0):     try to use it to receive ACPI event notifications.  For
    [    61.370] (II) NVIDIA(0):     details, please see the "ConnectToAcpid" and
    [    61.370] (II) NVIDIA(0):     "AcpidSocketPath" X configuration options in Appendix B: X
    [    61.370] (II) NVIDIA(0):     Config Options in the README.
    [    61.388] (II) NVIDIA(0): Setting mode "DFP-0:nvidia-auto-select,DFP-2:nvidia-auto-select"
    [    61.505] (==) NVIDIA(0): Disabling shared memory pixmaps
    [    61.505] (==) NVIDIA(0): Backing store enabled
    [    61.505] (==) NVIDIA(0): Silken mouse enabled
    [    61.505] (**) NVIDIA(0): DPMS enabled
    [    61.506] (WW) NVIDIA(0): Option "AllowIndirectGLX" is not used
    [    61.506] (WW) NVIDIA(0): Option "IndirectGLX" is not used
    [    61.506] (II) Loading sub module "dri2"
    [    61.506] (II) LoadModule: "dri2"
    [    61.506] (II) Module "dri2" already built-in
    [    61.506] (II) NVIDIA(0): [DRI2] Setup complete
    [    61.506] (II) NVIDIA(0): [DRI2]   VDPAU driver: nvidia
    [    61.508] (II) Initializing extension GLX
    [    61.952] (II) config/udev: Adding input device Power Button (/dev/input/event1)
    ...
    Then there are a bunch of new device warnings:
    Code:
    [    62.054] (II) config/udev: Adding input device HDA Intel MID Line Out (/dev/input/event10)
    [    62.054] (II) No input driver specified, ignoring this device.
    [    62.054] (II) This device may have been added with another device file.
    [    62.055] (II) config/udev: Adding input device HDA Intel MID Front Headphone (/dev/input/event11)
    [    62.055] (II) No input driver specified, ignoring this device.
    [    62.055] (II) This device may have been added with another device file.
    [    62.055] (II) config/udev: Adding input device HDA Digital PCBeep (/dev/input/event6)
    [    62.055] (II) No input driver specified, ignoring this device.
    [    62.055] (II) This device may have been added with another device file.
    [    62.055] (II) config/udev: Adding input device HDA Intel MID Front Mic (/dev/input/event7)
    [    62.055] (II) No input driver specified, ignoring this device.
    [    62.055] (II) This device may have been added with another device file.
    [    62.056] (II) config/udev: Adding input device HDA Intel MID Rear Mic (/dev/input/event8)
    [    62.056] (II) No input driver specified, ignoring this device.
    [    62.056] (II) This device may have been added with another device file.
    [    62.056] (II) config/udev: Adding input device HDA Intel MID Line (/dev/input/event9)
    [    62.056] (II) No input driver specified, ignoring this device.
    [    62.056] (II) This device may have been added with another device file.
    [    62.056] (II) config/udev: Adding input device PC Speaker (/dev/input/event2)
    [    62.056] (II) No input driver specified, ignoring this device.
    [    62.056] (II) This device may have been added with another device file.
    [    62.056] (II) config/udev: Adding input device (unnamed) (/dev/ttyS0)
    [    62.056] (II) No input driver specified, ignoring this device.
    [    62.056] (II) This device may have been added with another device file.
    [    62.057] (II) config/udev: Adding input device (unnamed) (/dev/ttyS1)
    [    62.057] (II) No input driver specified, ignoring this device.
    [    62.057] (II) This device may have been added with another device file.
    [    62.057] (II) config/udev: Adding input device (unnamed) (/dev/ttyS10)
    [    62.057] (II) No input driver specified, ignoring this device.
    [    62.057] (II) This device may have been added with another device file.
    [    62.057] (II) config/udev: Adding input device (unnamed) (/dev/ttyS11)
    [    62.057] (II) No input driver specified, ignoring this device.
    [    62.057] (II) This device may have been added with another device file.
    [    62.057] (II) config/udev: Adding input device (unnamed) (/dev/ttyS12)
    [    62.057] (II) No input driver specified, ignoring this device.
    [    62.057] (II) This device may have been added with another device file.
    [    62.057] (II) config/udev: Adding input device (unnamed) (/dev/ttyS13)
    [    62.057] (II) No input driver specified, ignoring this device.
    [    62.057] (II) This device may have been added with another device file.
    [    62.058] (II) config/udev: Adding input device (unnamed) (/dev/ttyS14)
    [    62.058] (II) No input driver specified, ignoring this device.
    [    62.058] (II) This device may have been added with another device file.
    [    62.058] (II) config/udev: Adding input device (unnamed) (/dev/ttyS15)
    [    62.058] (II) No input driver specified, ignoring this device.
    ...
    glxinfo shows I'm still using direct rendering:

    Code:
    $ glxinfo | head
    name of display: :1
    display: :1  screen: 0
    direct rendering: Yes
    server glx vendor string: NVIDIA Corporation
    server glx version string: 1.4
    server glx extensions:
        GLX_ARB_context_flush_control, GLX_ARB_create_context, 
        GLX_ARB_create_context_no_error, GLX_ARB_create_context_profile, 
        GLX_ARB_create_context_robustness, GLX_ARB_fbconfig_float, 
        GLX_ARB_multisample, GLX_EXT_buffer_age,
    But I can force indirect on local host:
    Code:
    glxinfo -i | head
    name of display: :1
    display: :1  screen: 0
    direct rendering: No (-i specified)
    server glx vendor string: NVIDIA Corporation
    server glx version string: 1.4
    server glx extensions:                                                                                             
        GLX_ARB_context_flush_control, GLX_ARB_create_context,                                                         
        GLX_ARB_create_context_no_error, GLX_ARB_create_context_profile,                                               
        GLX_ARB_create_context_robustness, GLX_ARB_fbconfig_float,                                                     
        GLX_ARB_multisample, GLX_EXT_buffer_age,
    I can't do that on remote host:
    Code:
    $ glxinfo -i
    
    name of display: localhost:11.0
    libGL error: No matching fbConfigs or visuals found
    libGL error: failed to load driver: swrast
    Error: couldn't find RGB GLX visual or fbconfig
    How can I check that I'm really using indirect rendering on remote host?

  6. #6

    Default Re: Leap 15 ignores indirect GLX request for NVIDIA driver

    As an update, I just added +iglx to Xorg using a wrapper script (I already tried this in Leap 43 without success):

    Code:
    ps ax | grep iglx
     2455 tty7     Sl+    0:02 /usr/bin/Xorg.original vt7 -displayfd 3 -auth /run/user/465/gdm/Xauthority -background none -noreset -keeptty -verbose 3 +iglx
     2705 tty2     Sl+    0:06 /usr/bin/Xorg.original vt2 -displayfd 3 -auth /run/user/1000/gdm/Xauthority -background none -noreset -keeptty -verbose 3 +iglx
    I also manually relinked /usr/lib64/xorg/modules/extensions/libglx.so to point to /usr/lib64/xorg/modules/extensions/libglx.so.390.87 rather than /usr/lib64/xorg/modules/extensions/xorg/xorg-libglx.so. Neither change had any effect.

    /usr/lib64/xorg/modules/extensions/libglx.so is used by X:
    Code:
    [    59.738] (II) Loading /usr/lib64/xorg/modules/extensions/libglx.so
    [    60.044] (II) Module glx: vendor="NVIDIA Corporation"
    [    60.044]    compiled for 4.0.2, module version = 1.0.0
    [    60.044]    Module class: X.Org Server Extension

  7. #7

    Default Solved!

    So, turns out my problem was pretty specific and not related to OpenSuSE particularly, so not sure how many others this will help, but just in case:

    It looks like we were affected by a Mesa / GL bug in CentOS 7.5.1804 (the latest release at time of writing). Local hosts with NVidia drivers installed can't use GLX applications on remote CentOS 7 machines over SSH when the following packages are installed on the remote machine:

    mesa-libEGL, mesa-libGL, mesa-libgbm, mesa-libglapi 17.2.3-8.20171019.el7 and libdrm 2.4.83-2.el7

    The solution was to either ditch NVidia drivers in favor of Nouveau on all local hosts (not practical for us), or to downgrade those packages on the CentOS 7 remote machine to:

    mesa-libEGL, mesa-libGL, mesa-libgbm, mesa-libglapi17.0.1-6.20170307.el7 and libdrm 2.4.74-1.el7

    Now we can finally run GLX applications over SSH again!

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •