Breaking the X module ABI in 7.0 ?

Roland Mainz roland.mainz at nrubsig.org
Tue Apr 12 04:05:53 EST 2005


Adam Jackson wrote:
> > > > 2. Would it be possible to break the existing ABI and start from
> > > > scratch with a new one ?
> > >
> > > Many things are possible.  I doubt reinventing this particular wheel
> > > would be a good use of our time.
> >
> > When will Xorg then deal with this kind of issues ? In 7.1, 7.2, 8.0 or
> > never ?
> 
> What kinds of issues?

That we're running more and more in the limitations of the current
server code - take a look at the examples in my previous posting.

[snip]
> That's only an ABI break if you change the behaviour of AllocPixmap().  The
> better thing to do is to create a new entrypoint named AllocPixmap2() that
> has a proper destructor and convert the drivers to use that.

This is a hack and no proper solution. And I've tried such a hack
already - it does not work as there is still no proper control over
deallocation. If you put the change into cfb you have to switch over all
consumers of cfb and if you do that for fb you still have to adjust all
consumers of fb, too. The situtation is very compliciated thanks to the
various players such as Xinerama and MIT-SHM in this game.

> Old drivers
> will work the old way and continue to be leaky.

This is not possible as there is no proper control over deallocation.
See above.

> I'm not saying that the issue you described is not a bug, just that we don't
> necessarily need to break the ABI to fix it.  You only need to break the ABI
> if you want to ensure that old drivers no longer work.

I do not want to make sure that old drivers do not work anymore, however
in the current situation it may be better to think about a cleanup of
all the old hacks in the code instead of adding another layer of hacks
on top of the old hacks. I've been suffering a lot of this horror while
getting the server side of XinemaraV2 working - which itself will only
work if we get the pixmap allocation under control - and that means we
need an ABI change.

----

Bye,
Roland

-- 
  __ .  . __
 (o.\ \/ /.o) roland.mainz at nrubsig.org
  \__\/\/__/  MPEG specialist, C&&JAVA&&Sun&&Unix programmer
  /O /==\ O\  TEL +49 641 7950090
 (;O/ \/ \O;)


More information about the xorg-arch mailing list