Commit 7ca4e08e authored by Olivier Fourdan's avatar Olivier Fourdan 🛠
Browse files

xwayland/glamor: Do not fallback to GLES2 if GL is unusable

Since commit dabc7d8b, Xwayland has tried GLES2 as a fallback if GL
version does not match the required version (2.1) so that some hardware
could still benefit from GLAMOR acceleration using GLES2.

This unfortunately has caused various regressions on some hardware,
namely Intel 945GM.

Revert that fallback to just disable GLAMOR if GL version is lower than
2.1 to behave like xwayland-21.1.x did.

This partly reverts commit dabc7d8b

Signed-off-by: Olivier Fourdan's avatarOlivier Fourdan <ofourdan@redhat.com>
See-also: xorg/xserver#1288
parent f85a0567
Pipeline #486435 passed with stages
in 2 minutes and 4 seconds
......@@ -909,30 +909,6 @@ xwl_glamor_try_big_gl_api(struct xwl_screen *xwl_screen)
return TRUE;
}
static Bool
xwl_glamor_try_gles_api(struct xwl_screen *xwl_screen)
{
const EGLint gles_attribs[] = {
EGL_CONTEXT_CLIENT_VERSION,
2,
EGL_NONE,
};
eglBindAPI(EGL_OPENGL_ES_API);
xwl_screen->egl_context = eglCreateContext(xwl_screen->egl_display,
EGL_NO_CONFIG_KHR,
EGL_NO_CONTEXT, gles_attribs);
if (!xwl_glamor_try_to_make_context_current(xwl_screen)) {
ErrorF("Failed to make EGL context current with GLES2\n");
xwl_glamor_maybe_destroy_context(xwl_screen);
return FALSE;
}
return TRUE;
}
static Bool
xwl_glamor_gbm_init_egl(struct xwl_screen *xwl_screen)
{
......@@ -964,9 +940,8 @@ xwl_glamor_gbm_init_egl(struct xwl_screen *xwl_screen)
goto error;
}
if (!xwl_glamor_try_big_gl_api(xwl_screen) &&
!xwl_glamor_try_gles_api(xwl_screen)) {
ErrorF("Cannot use neither GL nor GLES2\n");
if (!xwl_glamor_try_big_gl_api(xwl_screen)) {
ErrorF("Cannot use GL\n");
goto error;
}
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment