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:

Change History (0)

Note: See TracTickets for help on using tickets.