1. 13 Jan, 2022 1 commit
  2. 24 Dec, 2021 1 commit
  3. 17 Dec, 2021 1 commit
  4. 07 Dec, 2021 1 commit
  5. 04 Dec, 2021 2 commits
  6. 02 Dec, 2021 2 commits
    • Olivier Fourdan's avatar
      xwayland/eglstream: Prefer EGLstream if available · 6dd9709b
      Olivier Fourdan authored and Olivier Fourdan's avatar Olivier Fourdan committed
      
      
      Currently, when given the choice, Xwayland will pick the GBM backend
      over the EGLstream backend if both are available, unless the command
      line option “-eglstream” is specified.
      
      The NVIDIA proprietary driver had no support for GBM until driver series
      495, but starting with the driver series 495, both can be used.
      
      But there are other requirements with the rest of the stack, typically
      Mesa, egl-wayland, libglvnd as documented in the NVIDIA driver.
      
      So if the NVIDIA driver series 495 gets installed, Xwayland will pick
      the GBM backend even if EGLstream is available and may fail to render
      properly.
      
      To avoid that issue, prefer EGLstream if EGLstream and all the Wayland
      interfaces are available, and fallback to GBM automatically unless
      “-eglstream” was specified.
      
      With this, the compositor, given the choice, can decide which actual
      backend Xwayland would use by advertising (or not) the Wayland
      "wl_eglstream_controller" interface.
      
      This change has no impact on compositors which do not have support for
      EGLstream in the first place.
      
      Signed-off-by: Olivier Fourdan's avatarOlivier Fourdan <ofourdan@redhat.com>
      Acked-by: Michel Dänzer's avatarMichel Dänzer <mdaenzer@redhat.com>
      6dd9709b
    • Olivier Fourdan's avatar
      xwayland/glamor: Log backend selected for debug · c5d1fed9
      Olivier Fourdan authored and Olivier Fourdan's avatar Olivier Fourdan committed
      
      
      Add (verbose) statements to trace the actual backend used with glamor.
      
      That can be useful for debugging.
      
      Signed-off-by: Olivier Fourdan's avatarOlivier Fourdan <ofourdan@redhat.com>
      Reviewed-by: Michel Dänzer's avatarMichel Dänzer <mdaenzer@redhat.com>
      c5d1fed9
  7. 01 Dec, 2021 2 commits
  8. 04 Nov, 2021 1 commit
  9. 27 Oct, 2021 1 commit
  10. 25 Oct, 2021 3 commits
  11. 22 Oct, 2021 1 commit
  12. 20 Oct, 2021 1 commit
  13. 12 Oct, 2021 1 commit
    • Olivier Fourdan's avatar
      xwayland: Notify of root size change with XRandR emulation · 246ae00b
      Olivier Fourdan authored and Olivier Fourdan's avatar Olivier Fourdan committed
      
      
      Some clients (typically Java, but maybe others) rely on ConfigureNotify
      or RRScreenChangeNotify events to tell that the XRandR request is
      successful.
      
      When emulated XRandR is used in Xwayland, compute the emulated root size
      and send the expected ConfigureNotify and RRScreenChangeNotify events
      with the emulated size of the root window to the asking X11 client.
      
      Note that the root window size does not actually change, as XRandR
      emulation is achieved by scaling the client window using viewports in
      Wayland, so this event is sort of misleading.
      
      Also, because Xwayland is using viewports, emulating XRandR does not
      reconfigure the outputs location, meaning that the actual size of the
      root window which encompasses all the outputs together may not change
      in a multi-monitor setup. To work around this limitation, when using an
      emulated mode, we report the size of that emulated mode alone as the
      root size for the configure notify event.
      
      Signed-off-by: Olivier Fourdan's avatarOlivier Fourdan <ofourdan@redhat.com>
      Reviewed-by: default avatarHans de Goede <hdegoede@redhat.com>
      246ae00b
  14. 06 Oct, 2021 1 commit
  15. 05 Oct, 2021 2 commits
    • James Jones's avatar
      Use EGL_LINUX_DMA_BUF_EXT to create GBM bo EGLImages · f1572937
      James Jones authored
      
      
      Xwayland was passing GBM bos directly to
      eglCreateImageKHR using the EGL_NATIVE_PIXMAP_KHR
      target. Given the EGL GBM platform spec claims it
      is invalid to create a EGLSurface from a native
      pixmap on the GBM platform, implying there is no
      mapping between GBM objects and EGL's concept of
      native pixmaps, this seems a bit questionable.
      
      This change modifies the bo import function to
      extract all the required data from the bo and then
      imports it as a dma-buf instead when the dma-buf +
      modifiers path is available.
      
      Signed-off-by: James Jones's avatarJames Jones <jajones@nvidia.com>
      Reviewed-by: Simon Ser's avatarSimon Ser <contact@emersion.fr>
      f1572937
    • Olivier Fourdan's avatar
      xwayland/shm: Avoid integer overflow on large pixmaps · 079c5ccb
      Olivier Fourdan authored and Olivier Fourdan's avatar Olivier Fourdan committed
      
      
      Xwayland's xwl_shm_create_pixmap() computes the size of the shared
      memory pool to create using a size_t, yet the Wayland protocol uses an
      integer for that size.
      
      If the pool size becomes larger than INT32_MAX, we end up asking Wayland
      to create a shared memory pool of negative size which in turn will raise
      a protocol error which terminates the Wayland connection, and therefore
      Xwayland.
      
      Avoid that issue early by return a NULL pixmap in that case, which will
      trigger a BadAlloc error, but leave Xwayland alive.
      
      Signed-off-by: Olivier Fourdan's avatarOlivier Fourdan <ofourdan@redhat.com>
      Reviewed-by: Jonas Ådahl's avatarJonas Ådahl <jadahl@gmail.com>
      079c5ccb
  16. 23 Sep, 2021 1 commit
    • Adam Jackson's avatar
      xwayland/glx: Enable sRGB fbconfigs · 6c1e6429
      Adam Jackson authored and Adam Jackson's avatar Adam Jackson committed
      We turn this on if the GL underneath us can enable GL_FRAMEBUFFER_SRGB.
      We do try to generate both capable and incapable configs, which is to
      keep llvmpipe working until the client side gets smarter about its srgb
      capabilities.
      6c1e6429
  17. 17 Sep, 2021 1 commit
  18. 15 Sep, 2021 4 commits
  19. 06 Sep, 2021 1 commit
  20. 12 Aug, 2021 1 commit
  21. 06 Aug, 2021 1 commit
  22. 09 Jul, 2021 10 commits