driconf: add a way to override indirect-GL extensions

Support for DRI1 is not implemented, but who still uses that?

Reviewed-by: Adam Jackson <ajax@redhat.com>
Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
Signed-off-by: Martin Peres <martin.peres@mupuf.org>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/7212>
This commit is contained in:
Martin Peres
2020-10-20 16:20:20 +03:00
parent 7eedc79658
commit d2cb3f862f
6 changed files with 18 additions and 0 deletions

View File

@@ -12,3 +12,4 @@ VK_KHR_shader_terminate_invocation on RADV
NGG GS support in ACO
VK_KHR_shader_terminate_invocation on ANV
driconf: add glx_extension_override
driconf: add indirect_gl_extension_override

View File

@@ -38,6 +38,7 @@ DRI_CONF_SECTION_DEBUG
DRI_CONF_FORCE_GL_VENDOR()
DRI_CONF_OVERRIDE_VRAM_SIZE()
DRI_CONF_GLX_EXTENSION_OVERRIDE()
DRI_CONF_INDIRECT_GL_EXTENSION_OVERRIDE()
DRI_CONF_SECTION_END
DRI_CONF_SECTION_MISCELLANEOUS

View File

@@ -1367,6 +1367,12 @@ dri2CreateScreen(int screen, struct glx_display * priv)
&tmp) == 0)
__glXParseExtensionOverride(&psc->base, tmp);
if (psc->config->base.version > 1 &&
psc->config->configQuerys(psc->driScreen,
"indirect_gl_extension_override",
&tmp) == 0)
__IndirectGlParseExtensionOverride(&psc->base, tmp);
/* DRI2 supports SubBuffer through DRI2CopyRegion, so it's always
* available.*/
psp->copySubBuffer = dri2CopySubBuffer;

View File

@@ -1003,6 +1003,12 @@ dri3_create_screen(int screen, struct glx_display * priv)
&tmp) == 0)
__glXParseExtensionOverride(&psc->base, tmp);
if (psc->config->base.version > 1 &&
psc->config->configQuerys(psc->driScreen,
"indirect_gl_extension_override",
&tmp) == 0)
__IndirectGlParseExtensionOverride(&psc->base, tmp);
free(driverName);
tmp = getenv("LIBGL_SHOW_FPS");

View File

@@ -54,6 +54,7 @@
driOptionDescription __dri2ConfigOptions[] = {
DRI_CONF_SECTION_DEBUG
DRI_CONF_GLX_EXTENSION_OVERRIDE()
DRI_CONF_INDIRECT_GL_EXTENSION_OVERRIDE()
DRI_CONF_SECTION_END
DRI_CONF_SECTION_PERFORMANCE

View File

@@ -221,6 +221,9 @@
DRI_CONF_OPT_S(glx_extension_override, def, \
"Allow enabling/disabling a list of GLX extensions")
#define DRI_CONF_INDIRECT_GL_EXTENSION_OVERRIDE(def) \
DRI_CONF_OPT_S(indirect_gl_extension_override, def, \
"Allow enabling/disabling a list of indirect-GL extensions")
/**