Concerns Over Merging Drivers Back Into The X Server

Posted by Michael Larabel on April 08, 2010

While development efforts within the X.Org community are now ramping up for the release of X Server 1.9 that should arrive in August, there is an ongoing discussion concerning a planned long-term change for the X Server: pulling the drivers back in.

With X.Org came the modularization of drivers compared to XFree86, which allow drivers to be built independently of the X Server. However, it was proposed a few months back that with X Server 1.10 that the drivers get pulled back into the X Server. This would result in X.Org becoming a more monolithic package, but would allow driver developers to more easily break the API/ABI and other invasive changes.

To users, moving the drivers back into the X Server means that you must build the entire server + drivers whenever you want to update your lone DDX driver. Building the X Server takes longer and requires more dependencies than building a single driver like xf86-video-ati or xf86-video-intel. This cause even fewer people to test Git snapshots, which is a problem for a project that already could use more Linux desktop users testing out the latest code -- not less people.

Moving the drivers back in would also mean that the driver developers could no longer release updates independent of the X Server, but that the X Server would need to be released more frequently to provide support for new graphics cards and features. Intel's Keith Packard has already said this would mean a three to four month release schedule for the X Server, where as in the past the X Server has been released every six months, but with delays it's often months longer.

As a step towards moving at least the video drivers back into the X Server, Keith Packard has made a single protocol headers package for X Server 1.9 and that's what has set off this most recent discussion about where X.Org video drivers belong.

Some driver developers like Alex Deucher (AMD) have voiced concerns on moving the graphics drivers back into the X Server in that it will hamper inexperienced end-users in testing out the new code even more. As Daniel Stone has also pointed out, it's harder to test out new drivers if the state of the X Server Git code is in a poor state where one looking to just test out new graphics driver code could be stopped by bugs in say the input driver. It's been mostly Intel's developers like Keith Packard and Jesse Barnes voicing support for this structural move.

Also having been discussed is whether support for new graphics cards could be introduced in an X Server point release or whether it would wait until the next major X.Org release. Well, it could go either way, but providing it as a point release would mean that the few X.Org driver developers are taxed even further by now needing to back-port the code to an older X Server code-base.

Stephane Marchesin has also asked what gains this would really be when the APIs for EXA, RandR, and others have already been worked through mostly. Jesse Barnes agrees with this partially, but merging them back in would allow Intel to drop some conditional code from their driver that is targeted at older X Server releases and also to share more code amongst DDX drivers by placing common code within the X Server.

Alan Coopersmith of Sun/Oracle is also concerned about back-porting driver fixes under this proposed X Server model particularly with the enterprise operating systems / distributions. Pulling an entirely new X Server into an already released and supported distribution could cause troubles.

Another issue touched on by Keith is that in some cases building a new X Server would require updating to new libdrm code that's released quite frequently. However, in the end Keith says, "Let's see what we think in a few months when we're starting to do planning for 1.10; we'll have had some experience with the merged protocol headers by that point (I hope), perhaps that's all we need to do?"

Right now the views are pretty mixed but we will have to wait until August after X Server 1.9 is released to see what the final verdict is on moving the X.Org drivers back into the server area. If this change does go into X Server 1.10, it will likely impact users of Ubuntu 11.04, Fedora 15, and other H1'2011 Linux distributions.

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. Sumo Lounge Emperor
  2. Gallium3D Continues Improving OpenGL For Older Radeon GPUs
  3. 15-Way Open vs. Closed Source NVIDIA/AMD Linux GPU Comparison
  4. Nouveau vs. NVIDIA Linux Comparison Shows Shortcomings
Latest Software Articles
  1. Intel Linux OpenGL Driver Leading Over Apple OS X
  2. The Cost Of Ubuntu Disk Encryption
  3. Btrfs vs. EXT4 vs. XFS vs. F2FS On Linux 3.10
  4. AMD Radeon R600 GPU LLVM 3.3 Back-End Testing
Latest Linux News
  1. Wayland's Weston Gets Output Scaling Support
  2. Raspberry Pi Gets New Wayland Weston Renderer
  3. Debian GNU/Hurd 2013 Release Brings New Packages
  4. Intel Ultrabook Performance Is Faster With Mesa 9.2
  5. Hot Relocation HDD To SSD Support For Btrfs
  6. Phoronix Test Suite 4.6.0 "Utsira" Released
  7. New Intel X.Org Driver Supports All Of Haswell
  8. SQLite Now Faster With Memory Mapped I/O
  9. Microsoft Releases Skype For Linux 4.2, Has Bug-Fixes
  10. Qt For Tizen Launches, Based On Qt 5.1
  11. KTAP Released For Linux Kernel Dynamic Tracing
Latest Forum Talk
  1. Wayland's Weston Gets Output Scaling Support
  2. Fedora 18 Comes To ARMv6, Raspberry Pi
  3. Microsoft Releases Skype For Linux 4.2, Has...
  4. Raspberry Pi Gets New Wayland Weston Renderer
  5. Openbenchmarking.org main page is damaged
  6. Humble Indie Bundle Finally Sells Out
  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