summaryrefslogtreecommitdiff
path: root/src/glx
diff options
context:
space:
mode:
authorMike Blumenkrantz <michael.blumenkrantz@gmail.com>2024-03-12 14:59:55 -0400
committerMarge Bot <emma+marge@anholt.net>2024-04-04 13:18:00 +0000
commitcfa955ed78bef56ba025a64468e8b841149fab18 (patch)
treeb0488a587af2dfa8a2fc3227df350e1e8979dcee /src/glx
parentd3730fcd2d9042476ac21e805575d29bbb0ce970 (diff)
glx/egl: fix LIBGL_KOPPER_DISABLE
when set, this disables the use of vk swapchains and lets the dri frontend manage buffers like any other driver also document some kopper env vars Acked-by: Dave Airlie <airlied@redhat.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/28137>
Diffstat (limited to 'src/glx')
-rw-r--r--src/glx/dri3_glx.c3
-rw-r--r--src/glx/glxext.c3
2 files changed, 4 insertions, 2 deletions
diff --git a/src/glx/dri3_glx.c b/src/glx/dri3_glx.c
index 12a05246af1..68257cc72bd 100644
--- a/src/glx/dri3_glx.c
+++ b/src/glx/dri3_glx.c
@@ -78,6 +78,7 @@
#include "loader.h"
#include "loader_dri_helper.h"
#include "dri2.h"
+#include "util/u_debug.h"
static struct dri3_drawable *
loader_drawable_to_dri3_drawable(struct loader_dri3_drawable *draw) {
@@ -836,7 +837,7 @@ dri3_create_screen(int screen, struct glx_display * priv)
goto handle_error;
}
- if (!strcmp(driverName, "zink")) {
+ if (!strcmp(driverName, "zink") && !debug_get_bool_option("LIBGL_KOPPER_DISABLE", false)) {
return_zink = true;
goto handle_error;
}
diff --git a/src/glx/glxext.c b/src/glx/glxext.c
index 6a9ba8b5975..dad8ef4722b 100644
--- a/src/glx/glxext.c
+++ b/src/glx/glxext.c
@@ -907,7 +907,8 @@ __glXInitialize(Display * dpy)
** (e.g., those called in AllocAndFetchScreenConfigs).
*/
#if defined(GLX_USE_DRM)
- if (glx_direct && glx_accel && !zink) {
+ if (glx_direct && glx_accel &&
+ (!zink || debug_get_bool_option("LIBGL_KOPPER_DISABLE", false))) {
#if defined(HAVE_DRI3)
if (!debug_get_bool_option("LIBGL_DRI3_DISABLE", false)) {
dpyPriv->dri3Display = dri3_create_display(dpy);