[Differential] [Request, 117 lines] D2216: [platforms/virtual] Use rendernode or vgem device if available for egl

graesslin (Martin Gräßlin) noreply at phabricator.kde.org
Tue Jul 19 08:57:35 UTC 2016


graesslin created this revision.
graesslin added reviewers: KWin, Plasma on Wayland.
Restricted Application added subscribers: kwin, plasma-devel.
Restricted Application added projects: Plasma on Wayland, KWin.

REVISION SUMMARY
  The egl implementation for the virtual platform tries to use a render
  node if available. If there is no render node it looks for a virtual
  (kernel driver vgem) device, which unfortunately does not create a
  render node in mainline kernel (there are patches in ChromiumOS).
  
  For this the Udev wrapper is extended to search for renderNode devices
  and for virtual dri devices.
  
  If either render node or vgem dri device is found, it is tried to be
  opened (without logind escalation) and on success a gbm device is
  created on it. If any step of this fails the so far default behavior
  of default device is tried for creating the EGLDisplay.
  
  All of this is compile optional, so that the virtual platform does not
  hard depend on udev and/or gbm.

TEST PLAN
  Auto tests which need OpenGL executed and verified that they
  use the render node or vgem device.

REPOSITORY
  rKWIN KWin

BRANCH
  virtual-render-node-vgem

REVISION DETAIL
  https://phabricator.kde.org/D2216

AFFECTED FILES
  CMakeLists.txt
  config-kwin.h.cmake
  plugins/platforms/virtual/CMakeLists.txt
  plugins/platforms/virtual/egl_gbm_backend.cpp
  plugins/platforms/virtual/egl_gbm_backend.h
  udev.cpp
  udev.h

EMAIL PREFERENCES
  https://phabricator.kde.org/settings/panel/emailpreferences/

To: graesslin, #kwin, #plasma_on_wayland
Cc: plasma-devel, kwin, hardening, jensreuterberg, abetts, sebas
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/plasma-devel/attachments/20160719/8866c418/attachment.html>


More information about the Plasma-devel mailing list