xserver: Branch 'master'

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Fri Jan 20 07:32:39 UTC 2023


 glamor/glamor_egl.c               |    5 +++++
 hw/xwayland/xwayland-glamor-gbm.c |    4 ++++
 2 files changed, 9 insertions(+)

New commits:
commit 711d491729d83b17114fd08d784bc0ddfd17ff6a
Author: Ivan A. Melnikov <iv at altlinux.org>
Date:   Wed Dec 21 18:29:21 2022 +0400

    glamor: Don't initialize on softpipe
    
    There are systems where softpipe is the default renderer,
    e.g. when llvmpipe is not is not available. Using glamor
    on such systems is never a good idea.
    
    This mirrors what commit 0a9415cf793babed1f28c61f8047d51de04f1528
    did for llvmpipe.
    
    Closes: #1417
    
    Signed-off-by: Ivan A. Melnikov <iv at altlinux.org>

diff --git a/glamor/glamor_egl.c b/glamor/glamor_egl.c
index e2a2a1050..c35b10d83 100644
--- a/glamor/glamor_egl.c
+++ b/glamor/glamor_egl.c
@@ -1080,6 +1080,11 @@ glamor_egl_init(ScrnInfoPtr scrn, int fd)
                    "glGetString() returned NULL, your GL is broken\n");
         goto error;
     }
+    if (strstr((const char *)renderer, "softpipe")) {
+        xf86DrvMsg(scrn->scrnIndex, X_INFO,
+                   "Refusing to try glamor on softpipe\n");
+        goto error;
+    }
     if (!strncmp("llvmpipe", (const char *)renderer, strlen("llvmpipe"))) {
         if (scrn->confScreen->num_gpu_devices)
             xf86DrvMsg(scrn->scrnIndex, X_INFO,
diff --git a/hw/xwayland/xwayland-glamor-gbm.c b/hw/xwayland/xwayland-glamor-gbm.c
index 5e2c618ab..93c15cac9 100644
--- a/hw/xwayland/xwayland-glamor-gbm.c
+++ b/hw/xwayland/xwayland-glamor-gbm.c
@@ -1030,6 +1030,10 @@ xwl_glamor_gbm_init_egl(struct xwl_screen *xwl_screen)
         ErrorF("glGetString() returned NULL, your GL is broken\n");
         goto error;
     }
+    if (strstr((const char *)renderer, "softpipe")) {
+        ErrorF("Refusing to try glamor on softpipe\n");
+        goto error;
+    }
     if (!strncmp("llvmpipe", (const char *)renderer, strlen("llvmpipe"))) {
         ErrorF("Refusing to try glamor on llvmpipe\n");
         goto error;


More information about the xorg-commit mailing list