LWN.net Logo

The state of Linux graphics

Jon Smirl, a graphics hacker who has most recently been working on the Xegl server, has posted a lengthy article on the state of desktop graphics under Linux. It is a detailed description of the state of the art, a tutorial on what all those acronyms (XAA, EXA, DRI, EGL, ...) mean, and a call for the X development community to pull together behind a single plan for development in the future. "My experience with the failure of Xegl has taught me that building a graphics subsystem is a large and complicated job, far too large for one or two people to tackle. As a whole, the X.org community barely has enough resources to build a single server. Splitting these resources over many paths only results in piles of half finished projects. I know developers prefer working on whatever interests them, but given the resources available to X.org, this approach will not yield a new server or even a fully-competitive desktop based on the old server in the near term. Maybe it is time for X.org to work out a roadmap for all to follow." Worth a read.
(Log in to post comments)

Really nice article.

Posted Aug 30, 2005 18:42 UTC (Tue) by stef70 (guest, #14813) [Link]

I enjoyed reading this article. It cleared up quite a few incorrect assumptions I had about all those new 'graphics' layers (DRI, XAA, Render...).

However, I am confused about the conclusion. The article does not really say why Xegl is a failure? Is the project stopped. The Xegl web page does not really say anything about its future.

<OutOfTopic>
This is one of my major complaints about freedesktop.org. Their project Wikis are usually a total mess.

For example, does anyone know what is happening to XCB/XCL? Their wiki http://xcb.freedesktop.org/wiki/xcb does not show a lot of activity and their mailing list is dead.

Another example, is the DRI wiki http://dri.freedesktop.org/wiki/.
The other day I spent more than one hour looking for some information about the radeon driver. I remember going to that page some months ago but I just couldn't find it anymore. I was felling like Alice lost in the forest. Frightening!!!
</OutOfTopic>

Does anyone know how much the DRI drivers are dependent of the X server?
How easy would it be to reuse to DRI driver (or the ATI and NVIDIA proprietary drivers) in a non X environment?


Xgl

Posted Aug 30, 2005 20:09 UTC (Tue) by corbet (editor, #1) [Link]

FWIW, here is the note Jon posted when he quit working on Xgl. It seems to be a matter of not enough people working on it, and too much energy going into things like EXA, which Jon sees as a half measure serving only to delay the deployment of a real solution.

Really nice article.

Posted Aug 31, 2005 0:14 UTC (Wed) by airlied (subscriber, #9104) [Link]

Xegl hasn't stopped, I've done some recent work on it, and I'm waiting on the Xgl author to make some changes he has in the pipeline,

but Xegl isn't the beginning and end there is a lot of work to be done that is infrastructure work, he claims fbdev can be used for a lot more than it can, and at KS we decided a userspace solution may be necessary in a lot of cases. Video Memory management is a big area that Xegl needs to get working futher, work in this is area seems to be taking off again and once X.org modular is finished it will probably see more developers.

And the current DRI drivers are completely useful outside of X, I use them in products with Mesa-solo, and Xegl is built on the current radeon DRI driver. The big areas missing are mode setting and memory management.

As for the proprietary ones you'd have to ask NVIDIA/ATI.

Really nice article.

Posted Aug 31, 2005 9:25 UTC (Wed) by joib (guest, #8541) [Link]

Yes, I agree the article was really good.

To my uninformed eyes it seems that Xegl represents a very strong and long term vision of how X and Linux graphics should evolve. IMHO it would be a pity to see the project waste away.

I hope that once the dust settles around the X modularization project X.org will think hard about the long term plans and dedicate sufficient resources to Xegl (or something similar).

Really nice article.

Posted Aug 31, 2005 14:36 UTC (Wed) by g.da.luz (guest, #32192) [Link]

IMHO, X developers should put some effort to make approaching contributing to the project easier for new developers. When I checked last time, the sticker "in order to accept your contribution, you'll have to show us that you know how to find your own way trough the code" was still there for junior developers. This is of course fine statement in itself, that could be applied equally well to any open source project, but we are talking about 16M lines of code here... As for myself, with almost 10 years of experience in OpenGL application programming, some kernel stuff reading and some spare time and will to spend it on X development, I tried on several occasions to approach DRI and related code, but to no avail - I was more or less able to understand what happens locally in code that I was reading, but I wasn't able to get a slightest clue about big picture. Jon's article helped me too a bit in that regard and maybe current efforts on code modularization will make these things easier to approach too, but I would be still very interested to hear is it possible to split the work in tasks of size that guys of background alike to mine (not X or kernel gurus by any means, but still I guess knowledgeable about graphics to some extent) would be able to help with.

Really nice article.

Posted Aug 31, 2005 19:30 UTC (Wed) by josh (subscriber, #17465) [Link]

XCB is under active development at the moment. One reason you might not notice this on the mailing list is that a number of the primary developers all live in the same area, and often communicate and collaborate offline. Another reason is that many of the developers are also students, and are frequently busy with classes. :) Please don't let that discourage you from participating; just because there isn't a ton of traffic on the mailing list at the moment doesn't mean you won't get any discussion if you post there.

The primary focus at the moment is ensuring that Xlib/XCB passes the X Test Suite, at least to the same extent that plain Xlib does. Once that happens, we plan to make Xlib/XCB the default Xlib.

Really nice article.

Posted Aug 31, 2005 22:14 UTC (Wed) by stef70 (guest, #14813) [Link]

Nice to see that the project is not dead but where is the mailing list?

The XCB main page (http://xcb.freedesktop.org/wiki/) indicates that the list is hosted at http://www.freedesktop.org/mailman/listinfo/xcb but it is not listed there?

The other list mentionned on the wiki is xcb-commit (http://www.freedesktop.org/mailman/listinfo/xcb-commit).
That one exists but the archive does not show any activity for almost a month and it that is clearly not a discussion list.

Really nice article.

Posted Sep 1, 2005 8:39 UTC (Thu) by josh (subscriber, #17465) [Link]

Ah, right. :/

From the topic in #freedesktop on freenode:
lists are intermittently broken, be patient | parts of gabe's RAID array failed -- bugs.fd.o and lists.fd.o are known to be affected (missing attachments in BZ, corrupted mail archives)

xcb is one of the lists affected. This is currently being fixed.

The state of Linux graphics

Posted Aug 31, 2005 0:46 UTC (Wed) by mmarq (guest, #2332) [Link]

For what it worths(a lot IMO), you are already a hero Jon!... You and DaveR, and many others that have dedicated their "free" time to projects similar or in the scope of Xgl, are the ones that are really keeping the word "freedom" in actuality for this community.

This is not a political or emotional statement, its the constatation of a fact. FOSS grew from the necessary tools to rudimentary graphic/command shells and exploded when alternatives to graphic Windows(tm) presented themselfs viable with KDE/Gnome on Linux. The focus was Workstation/PC to server, but server got entreprise adoption first. But if it was only to build a better server it could have been(and perhaps better) any of the "older" BSDs to gain the traction.

So i appeal for not giving up now. Better times will come, becasue if not, i belive this community will regretfully shrink to dimensions similar to those of the more used BSDs. Then nobody will be really quitting!

Copyright © 2005, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds
Powered by Rackspace Managed Hosting.