Xserver driver merging pros & cons

Peter Hutterer peter.hutterer at who-t.net
Thu Sep 15 14:13:28 PDT 2011

On Thu, Sep 15, 2011 at 06:05:46PM +0100, Dave Airlie wrote:
> On Thu, Sep 15, 2011 at 5:34 PM, Alex Deucher <alexdeucher at gmail.com> wrote:
> > On Thu, Sep 15, 2011 at 11:45 AM, Jesse Barnes <jbarnes at virtuousgeek.org> wrote:
> >> At XDC this week we discussed merging drivers back into the server
> >> tree.  One thing I found frustrating about the discussion was that we
> >> didn't have a whiteboard nor a list of the pros & cons of such a
> >> change.  So I'd like to capture that here (from memory) to let us
> >> continue the discussion about whether it's worth it or not.
> >>
> >> Luc, I think you're the most vocal opponent of this move, so I've cc'd
> >> you so you can enumerate any issues I've forgotten.
> >>
> >> Anyway, as I recall, the issues are as follows:
> >>
> >> Pros:
> >>  1) easier to propagate API changes across drivers (just like Linux)
> >>     1a) thus easier to change ABI
> >>  2) developers focused on driver development now have more incentive
> >>     to make sure the server works well so regular releases can still
> >>     happen (i.e. more people working on blockers whether driver or not
> >>     as releases approach)
> >>  3) allows removal of driver compat code for various server versions
> >>     3a) thus removes combinations of driver+server that developers
> >>         have to support & test
> >>  4) increased test coverage for the server as users wanting current
> >>     driver code will be building new servers too
> >>
> >> Cons:
> >>  1) more work for distros to backport just driver changes to old
> >>     servers (especially if people follow through on (3) above)
> >>     1a) if backporting is harder, new hardware support will be more
> >>         difficult to land in "enterprise" level distros
> >>  2) harder for users to just upgrade drivers independently, now
> >>     they'll have to build the whole server
> >>     2a) thus less testing of current driver code from technical users
> >>
> >> I've already made my views pretty clear; I'd prefer merging the drivers
> >> back in.  But I don't do as much work on the DIX or DDX as I used to,
> >> and lots of others would be affected as well, so I'd like to hear what
> >> people think.  Have I captured the pros & cons fully?  What to distro
> >> maintainers think?  And driver developers, both input & output?
> >
> > For me personally, I don't seem much advantage in moving the drivers
> > into the xserver.  The number of ABI breaks is minimal (usually 1 per
> > xserver) and those can usually be fixed within a day or so of the
> > breakage.  I don't rebuild the xserver nearly as often as I rebuild
> > the ddx so it would mean more work to keep up with the xserver changes
> > on a regular basis.  For unmaintained drivers, this might be an
> > advantage, but at this point the unmaintained drivers are just about
> > all for hardware >10 years old, so I'm not sure how important it is to
> > continue to pretend we still support them.
> >
> > Additionally, as was shown in Jeremy's slides, the number of changes
> > in the Xserver has been going down with each successive release.  It
> > doesn't seem untenable to keep maintained external drivers in sync.
> >
> At the moment I have a large project in the works to redo the driver ABI,
> its pretty much an impossible project no matter what happens, its a major
> ABI change and will pretty much require major reworks off all the drivers.
> Now I've no idea how to do this with the current model, even with the drivers
> merged its going to be a real pain to land, thats if I ever even get
> it to a useable
> stage.

That should be the subject of a separate discussion then, to avoid the
conflation of the two issues.


More information about the xorg-devel mailing list