st/mesa: suppress async glthread flushing for GLX_EXT_texture_from_pixmap

This might fix some window system issues.

Fixes: 3da170faae - glthread: change when glFlush flushes asynchronously

Acked-by: Pierre-Eric Pelloux-Prayer <pierre-eric.pelloux-prayer@amd.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19809>
(cherry picked from commit d871958702)
This commit is contained in:
Marek Olšák 2022-11-17 08:31:33 -05:00 committed by Eric Engestrom
parent 2946c2b3b3
commit 569c230e22
2 changed files with 5 additions and 1 deletions

View file

@ -517,7 +517,7 @@
"description": "st/mesa: suppress async glthread flushing for GLX_EXT_texture_from_pixmap",
"nominated": true,
"nomination_type": 1,
"resolution": 0,
"resolution": 1,
"main_sha": null,
"because_sha": "3da170faaec2a57d76e668ab56781621c23c6703"
},

View file

@ -832,6 +832,9 @@ st_context_flush(struct st_context_iface *stctxi, unsigned flags,
st->gfx_shaders_may_be_dirty = true;
}
/* This is only for GLX_EXT_texture_from_pixmap and equivalent features
* in EGL and WGL.
*/
static bool
st_context_teximage(struct st_context_iface *stctxi,
enum st_texture_type tex_type,
@ -915,6 +918,7 @@ st_context_teximage(struct st_context_iface *stctxi,
texObj->needs_validation = true;
_mesa_dirty_texobj(ctx, texObj);
ctx->Shared->HasExternallySharedImages = true;
_mesa_unlock_texture(ctx, texObj);
return true;