Opened 2 months ago
#74003 assigned defect
xorg-server @1.20.11_1, mesa @26.0.7_0+llvmpipe: Indirect GLX is not working on macOS Tahoe 26.5
| Reported by: | maehne (Torsten Maehne) | Owned by: | jeremyhu (Jeremy Huddleston Sequoia) |
|---|---|---|---|
| Priority: | Normal | Milestone: | |
| Component: | ports | Version: | 2.12.5 |
| Keywords: | tahoe | Cc: | mohd-akram (Mohamed Akram) |
| Port: | xorg-server mesa |
Description
Indirect GLX is not working on macOS Tahoe 26.5. This prevents starting GUI applications using OpenGL from inside a container. E.g., we are using the IIC-OSIC-TOOLS container, which packages many open-source electronic design automation tools necessary for ASIC design using open-source PDKs. Normal X11 applications, launched from within the container, are displayed properly by X11.app. However, applications depending on OpenGL consistently fail, e.g., GDS3D (see iic-jku/IIC-OSIC-TOOLS#220) with:
No matching fbConfigs or visuals found glx: failed to create drisw screen X Error of failed request: GLXBadContext Major opcode of failed request: 148 (GLX) Minor opcode of failed request: 5 (X_GLXMakeCurrent) Serial number of failed request: 37 Current serial number in output stream: 37
The option enable_iglx is set to YES, macOS was rebooted, and X11.app relaunched:
$ quartz-wm --help
usage: quartz-wm OPTIONS
Aqua window manager for X11.
--version Print the version string
--prefs-domain <domain> Change the domain used for reading preferences
(default: org.macports.X11)
$ defaults read org.macports.X11
{
"NSWindow Frame x11_apps" = "973 711 454 303 0 0 1470 923 ";
"NSWindow Frame x11_prefs" = "268 549 484 340 0 0 1470 923 ";
"app_to_run" = "/opt/local/bin/xterm";
"cache_fonts" = 1;
"done_xinit_check" = 1;
"enable_iglx" = 1;
"login_shell" = "/bin/sh";
"no_auth" = 0;
"nolisten_tcp" = 0;
"startx_script" = "/opt/local/bin/startx -- /opt/local/bin/Xquartz";
}
glxinfo @9.0.0_0 and glxgears @9.0.0_0 execute without error when started directly from the macOS terminal. However, when forcing indirect GLX, a similar error is issued as by the OpenGL applications from the container:
$ LIBGL_ALWAYS_INDIRECT=1 glxgears X Error of failed request: GLXBadContext Major opcode of failed request: 148 (GLX) Minor opcode of failed request: 5 (X_GLXMakeCurrent) Serial number of failed request: 24 Current serial number in output stream: 24 $ LIBGL_ALWAYS_INDIRECT=1 glxinfo name of display: /var/run/com.apple.launchd.kD9nBh9xYl/org.macports:0 X Error of failed request: GLXBadContext Major opcode of failed request: 148 (GLX) Minor opcode of failed request: 5 (X_GLXMakeCurrent) Serial number of failed request: 22 Current serial number in output stream: 22
I found the following related upstream issues:
- Xquartz issue #144: Indirect GLX not functioning in some cases
- Xquartz issue #446: Mesa/GLX issue - macOS Tahoe
- Mesa work item 15265: Error when running GLX on macOS Tahoe
