What Parts Of X.Org Should Be Killed With Fire?

Written by Michael Larabel in X.Org on 17 September 2010 at 03:49 AM EDT. 20 Comments
X.ORG
Originally at the X.Org Developers' Summit here in Toulouse this week there was going to be a talk entitled "Kill It With Fire" where Corbin Simpson (mostly known for his work on the ATI R300 Gallium3D driver) was going to be speaking about what drivers or parts of X.Org should be eliminated from the stack. This talk though is no longer occurring, in part as Corbin is no longer in attendance; he washed his US passport in the laundry.

Corbin has wrote a summary of what he was going to talk about on the X.Org Wiki. One of the items that has been talked about recently has been XAA vs. EXA and whether to eliminate the prior since EXA/UXA is superior to that of the ancient XFree86 Acceleration Architecture. However, XAA will not be killed off anytime soon since there still are old drivers (the niche ones outside of Intel/Nouveau/Radeon) and hardware that aren't a good fit for EXA. In particular, there's the older hardware that doesn't work well for heavily variable-stride allocations, compositing with alpha, and using 3D engines. As a result, XAA or EXA will not be killed off anytime soon. Even if EXA support was stripped away from the DDX drivers, it still can be accelerated on GPUs via the 3D engine with shaders by the X.Org state tracker in Gallium3D that implements EXA and X-Video.

Living within Mesa are a few obscure drivers that could die with little or few people noticing, like the Mach64, MGA, TdFX, and Savage DRI drivers, but since they at least receive build system fixes (but really no further development), Corbin sees no reason to let them die.

Corbin would like to see the R300 and R600 classic DRI drivers stripped from Mesa though as soon as the R300g and R600g drivers are mature. The ATI R300g (Gallium3D) driver is pretty much mature and is on-par with the classic driver but many in better cases, faster in some OpenGL tests, and more feature-rich thanks to the growing number of Gallium3D state trackers. The R300g and R300 Mesa drivers support up through the ATI Radeon X1000 series. The R600g driver is still not yet on-par with the R600 classic driver or comparable to the R300g driver, but it's quickly advancing and soon should be there with support through the ATI Radeon HD 5000 "Evergreen" hardware.

Legacy code from Mesa should also be stripped as soon as possible (such as GLSL parsing code that's no longer used by Intel's new GL Shading Language compiler). On the opposite end, Corbin wants to pull in Mesa / Gallium3D patches for adding in Haiku, AROS, and Syllable support patches.

On the kernel side of the Linux graphics stack, there are many frame-buffer drivers that this student developer would like removed, but first they need to be ported over to KMS. However, there's not a lot of hardware for these obscure drivers in use and these FB drivers vary already in code quality state. Much activity on this side isn't expected in the near future.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week