Last year the Wayland Display Server project was started by Kristian Høgsberg, a Red Hat developer and a name known well within the X.Org community for his work on AIGLX, Direct Rendering Infrastructure 2, and various other projects. We were first to talk about the Wayland Display Server in detail, which aims to provide a mini display server that is designed around the latest X/kernel technologies like the Graphics Execution Manager and kernel mode-setting. Wayland also integrates its own compositing manager and is designed to produce a perfect frame (a.k.a. no tearing) each and every time. There has not been much to report on this project recently, but we now have a status update courtesy of Kristian.
Since first talking about Wayland back in November, this display server has advanced a fair amount. Intel kernel mode-setting has also entered the mainline Linux kernel and the ATI kernel mode-setting support is preparing to go mainline in Linux 2.6.31 or 2.6.32. Wayland has EGL and GLX based compositors, in December it picked up a working terminal, and in time for Christmas there was even the ability to run dual X Servers side-by-side in Wayland. In February its Eagle EGL stack had working DRI2 support and a month later a Clutter back-end was in development. However, when it comes to the Wayland code-base itself, not much activity has taken place within the past two months. In fact, the last Git commit was on the 17th of March.
As Kristian Høgsberg mentioned on the Wayland mailing list yesterday, things have been fairly busy for him as Red Hat wraps up work on Fedora 11 and at the same time he has been one of the developers spearheading GNOME's move from SVN-based repositories over to Git. When it comes to Wayland work, much of his recent work has been done within Cairo.
As Wayland clients are responsible for direct rendering to the screen, some work is required to get this graphics library working under Wayland, but it will be a big step forward considering that GNOME/GTK+ rely upon Cairo. Intel's Eric Anholt has also been working on an OpenGL-based back-end for Cairo, which would allow Cairo to run under Wayland no matter the graphics hardware in use. This is in contrast to the approach Kristian Høgsberg and Chris Wilson have been doing of hardware-specific support in a Cairo DRM branch. Coming soon, work will be underway in getting GTK+ to work with the cairo-drm back-end.
Kristian also mentioned that he is continuing to work on getting his Clutter back-end running with the Wayland Display Server too, but there is not much to report on right now. Other work going on that will benefit Wayland includes a new mode-setting ioctl in order to carry out sync-to-vblank, a-synchronous page flipping within a KMS-enabled environment. The X Server will use this ioctl, but Kristian is ensuring that it will remain compatible and usable by Wayland.
Kristian Høgsberg also shared details on two other items coming up shortly on his TODO list for the Wayland Display Server. While much of the excitement with Wayland is about graphics, Kristian is looking at using the new libudev library in order to allow input device hot-plugging, which right now is not supported by Wayland. He is also looking at the possibility of running a rootless X Server on Wayland so that Wayland can pull windows from the X Server into the currently running Wayland server session. This feature would be very interesting.
While not much work is going directly into the Wayland Display Server right now, the project is still alive and kicking. Hopefully once Cairo and GTK+ are running under Wayland, the activity level will pick up again. The Clutter support will also be important and could even be used by the Moblin project with its phenomenal user interface. The new mode-setting ioctl should also definitely help Wayland. When there is more to share on this emerging open-source project, you can be sure we will cover it at Phoronix.