XWayland with GPU acceleration not available

Hello,

I did build upstream XWayland w/ EGLStreams support with the following patch as GL_OES_EGL_image isn’t exposed for desktop OpenGL on L4T:

diff --git a/hw/xwayland/xwayland-glamor-eglstream.c b/hw/xwayland/xwayland-glamor-eglstream.c
index 8d18caaf5..10ab2919c 100644
--- a/hw/xwayland/xwayland-glamor-eglstream.c
+++ b/hw/xwayland/xwayland-glamor-eglstream.c
@@ -1086,14 +1086,10 @@ xwl_glamor_eglstream_init_egl(struct xwl_screen *xwl_screen)
 
     xwl_eglstream_init_shaders(xwl_screen);
 
-    if (epoxy_has_gl_extension("GL_OES_EGL_image")) {
         if (dri3_screen_init(xwl_screen->screen, &xwl_dri3_info))
             xwl_screen->glvnd_vendor = "nvidia";
         else
             ErrorF("DRI3 initialization failed. Performance will be affected.\n");
-    } else {
-        ErrorF("Driver lacks GL_OES_EGL_image, performance will be affected.\n");
-    }
 
     return TRUE;
 error:

And then starting a self-compiled Xwayland w/ that patch applied with:

./build/hw/xwayland/Xwayland :4 -eglstream -rootless 

Trying to use glxinfo then results in:

$ DISPLAY=:4 glxinfo
name of display: :4
X Error of failed request:  BadValue (integer parameter out of range for operation)
  Major opcode of failed request:  149 (GLX)
  Minor opcode of failed request:  24 (X_GLXCreateNewContext)
  Value in failed request:  0x0
  Serial number of failed request:  40
  Current serial number in output stream:  41

and for Vulkan:

$ DISPLAY=:4 vulkaninfo 
===========
VULKAN INFO
===========

Vulkan Instance Version: 1.2.70

Xlib:  extension "NV-GLX" missing on display ":4".
Xlib:  extension "NV-GLX" missing on display ":4".
Xlib:  extension "NV-GLX" missing on display ":4".
/build/vulkan-xcHNom/vulkan-1.1.70+dfsg1/demos/vulkaninfo.c:2700: failed with VK_ERROR_INITIALIZATION_FAILED

(note that the Weston in nvidia-l4t-weston does not expose wl_drm, so I didn’t try with using the DRM backend instead of EGLStreams)

Can XWayland compatibility w/ GPU acceleration be made available in the L4T 32.x series please, like it was for desktop GPUs?

And Vulkan support for Wayland if not available (was not able to test it)?

Thank you,

Hi,
Xwayland is not tested/verified by defaut. It may not work properly on Jetson platforms. Would suggest use X11 or Wayland.

Hello,

We need Xwayland in a mostly-Wayland environment, but with the need of backwards compatibility for some X11 apps.

One of the reasons why is that chromium-browser —enable-features=UseOzonePlatform —ozone-platform=wayland fails with a GBM error for us when trying to launch hardware accelerated Chromium on Wayland.

Thank you,