X.Org Development Discussion Continues

Posted by Michael Larabel on October 28, 2009

In late September there was a call by Peter Hutterer for a new X.Org release process that consisted of a six-month release cycle for the X Server, all development work to be done in feature branches and not Git master, and a three-stage development cycle. The agreed upon version was pretty much the same as Peter's version, but it also called for the X.Org drivers to be pulled back into the X Server (around version 1.10).

This process was immediately adopted with X Server 1.8 getting a release date just six months out, and the first X Server 1.8 snapshot already being available. So everything is all set, right? Well, a discussion regarding the X Server release and development process has continued for the past several days among key X.Org developers.

Many messages have been accumulating about this matter in this mailing list thread, but here's the summary. While a six month release cycle right now is good for the X Server, and its current schedule of new versions that would be out in March / September just in time for the seasons of Linux distribution refreshes, this may not work in the future. Once the input/video drivers are merged back into the X Server, some developers are calling for a three month release cycle of the X Server.

Moving the X.Org drivers back into the X Server -- even though they were merged out of the X Server a few years back -- is wanted so that invasive API/ABI changes can be carried out without causing hell on the user. Lots of dead, legacy code could be deleted from both the drivers and the X Server, without making it messy on distribution maintainers and end-users with having certain version requirements for the different components with each X Server release. Instead, users would just need to grab the latest X Server, which would include the compatible drivers and need not worry about any API/ABI breakage. Having the drivers in the X Server would also cause more users to test out the latest X Server development code, which isn't happening too frequently right now.

However, with an X Server + drivers combo, some -- including Keith Packard -- are saying that a six month release cycle is not frequent enough. Intel ships their X.Org driver updates quarterly and many of the other open-source X.Org drivers ship more releases than two a year too. With what the current model looks like now, a user could be waiting up to six months for a new driver that supports the latest graphics hardware, new features, bug-fixes, etc.

Depending upon the policies of the Linux distribution you are using, you may need to wait for an entirely new update to your distribution before the new X Server / drivers are pulled. Though as it stands right now, some distributions (such as Ubuntu) end up having older drivers and will not push down new major xf86-video-* driver releases until their next bi-annual release, which forces the users already to build from source or use a bleeding-edge package repository in order to gain new hardware support or important features. These users end up just seeing two driver releases per year already, though distributions like Fedora update their graphics drivers much more frequently.

When it comes to having an even shorter release cycle, there becomes the problem of getting the actual releases out the door and in a working, quality state. The X.Org project is strapped for developers as it is, while putting out for X Server releases per year would place an even larger burden on their shoulders. Beyond just getting the releases out there, with a short release cycle it also becomes a matter of how legacy and stable branches would be maintained and for how long, which again is more work on the X.Org developers, and decisions to be made about back-porting work in the X Server, etc.

Other ideas have also come up on the mailing list with only allowing API/ABI breakage on even versions of the X Server and even splitting out graphics drivers on a per-chipset/series basis. Instead of just having say the "radeon" driver module, there would be a separate driver for the R300, R500, R600, R700 series, etc. Albeit, much of the code between the different families is already shared.

Of course, the drivers could just not be merged back into the X Server, but then cleaning up the X Server and drivers becomes more difficult with API/ABI breaks. There's a few decisions to ultimately be made, and we'll keep tabs on this thread to see what comes about.

Discuss this article in our forums, IRC channel, or email the author. You can also follow our content via RSS and on social networks like Facebook, Identi.ca, and Twitter (@Phoronix and @MichaelLarabel). Subscribe to Phoronix Premium to view our content without advertisements, view entire articles on a single page, and experience other benefits.
Latest Hardware Reviews
  1. Intel Haswell HD Graphics 4600 vs. AMD Radeon Graphics On Linux
  2. Intel Haswell HD Graphics 4600 Performance On Ubuntu Linux
  3. Intel Core i7 4770K "Haswell" Benchmarks On Ubuntu Linux
  4. The First Experience Of Intel Haswell On Linux
Latest Software Articles
  1. Optimized Binaries Provide Great Benefits For Intel Haswell
  2. 11-Way Linux, BSD Platform Comparison
  3. SNA Acceleration Works Great For Intel Core i7 Haswell
  4. The Linux Evolution For Intel Haswell's Performance
Latest Linux News
  1. NVIDIA Brings Their Linux Driver To ARM
  2. D Language Still Showing Promise, Advancements
  3. Planetary Annihilation Released For Linux Gamers
  4. Gentoo Starts Work On KDE-Wayland Support
  5. NVIDIA To License Its Kepler GPU Technology
  6. KDE's KWin Made Lots Of Progress In 4.11
  7. Ubuntu Announces Carrier Advisory Group
  8. Qt 5.1 Release Candidate 1 Has Arrived
  9. In-Fighting Continues Over Mir On Non-Unity Ubuntu
  10. Subversion 1.8 Presents New Features
  11. LLVM 3.3 Officially Released
Latest Forum Talk
  1. Gentoo Starts Work On KDE-Wayland Support
  2. Planetary Annihilation Released For Linux Gamers
  3. D Language Still Showing Promise, Advancements
  4. In-Fighting Continues Over Mir On Non-Unity Ubuntu
  5. Planetary Annihilation Plans To Come To Linux
  6. NVIDIA To License Its Kepler GPU Technology
  1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Motherboards
  5. Peripherals
  6. Processors
  7. Software
  8. Operating Systems
  9. All Articles
  1. Linux Benchmarking
  2. OpenBenchmarking.org
  3. Phoronix Test Suite