Bug 1290777

Summary: No way of enabling Indirect GLX with GDM
Product: Red Hat Enterprise Linux 7 Reporter: John Hodrien <J.H.Hodrien>
Component: xorg-x11-serverAssignee: Adam Jackson <ajax>
Status: CLOSED ERRATA QA Contact: Desktop QE <desktop-qa-list>
Severity: unspecified Docs Contact:
Priority: high    
Version: 7.2CC: ayadav, gordon.stocks, han9, jared.baker, tgummels, tpelka, woodard
Target Milestone: rcKeywords: ZStream
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: xorg-x11-server-1.17.2-16.el7 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
: 1372180 (view as bug list) Environment:
Last Closed: 2016-11-04 02:50:14 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1274917, 1372180    

Description John Hodrien 2015-12-11 12:23:32 UTC
Description of problem:
Remote OpenGL not working with indirect GLX, and no obvious way of telling GDM to enable it.

Version-Release number of selected component (if applicable):
xorg-x11-server-Xorg-1.17.2-10.el7.x86_64

How reproducible:
Always using the nvidia proprietary drivers, or most probably any other hardware accelerated drivers that don't use Mesa.

Steps to Reproduce:
1.  Setup machine with nvidia drivers
2.  ssh -Y remotehost
3.  glxinfo

Actual results:
$ glxinfo
name of display: remotehost:33.0
libGL error: failed to load driver: swrast
X Error of failed request:  BadValue (integer parameter out of range for operation)
  Major opcode of failed request:  153 (GLX)
  Minor opcode of failed request:  3 (X_GLXCreateContext)
  Value in failed request:  0x0
  Serial number of failed request:  27
  Current serial number in output stream:  30


Expected results:
Normal glxinfo output.

Additional info:
Passing an argument +iglx to Xorg enables indirect GLX, and remote OpenGL then works correctly.

Tested with the nouveau driver this works, but that doesn't allow for running CUDA applications.  I assume the Mesa driver underpinning nouveau is doing internal trickery to present as direct GLX even on remote connections that the nVidia driver doesn't, or isn't able, to do.

Related bug is that GDM doesn't allow arbitrary Xorg args to be passed: https://bugzilla.gnome.org/show_bug.cgi?id=586777

Comment 9 errata-xmlrpc 2016-11-04 02:50:14 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://rhn.redhat.com/errata/RHBA-2016-2293.html