[Mesa-dev] glproto changes

Jesse Barnes jbarnes at virtuousgeek.org
Wed May 4 18:21:20 PDT 2011

On Thu, 5 May 2011 11:17:02 +1000
Dave Airlie <airlied at gmail.com> wrote:

> So I wasn't watching and glproto broke its interface, and I think its bad.
> Why?
> You can no longer bisect things across this point without now moving glproto.
> glxproto.h:xGLXBufferSwapComplete was a released header file
> definition, you cannot go back and change history.
> This should have been handled with xGLXBufferSwapComplete2 struct that
> newer mesa and X server could would use
> instead of the older code. Old code would build against the old broken
> defintion but since its broken it wouldn't matter,
> and new code would build against the new fixed definition.
> This doesn't address the I need the latest glproto to build mesa and
> my distro doesn't have which concerns me less
> than the I can't bisect anymore and I fully agree with Jesse that the
> last time we tried using #ifdef for this sort of thing it led
> to a number of untested combos resulting in impossible to debug issues.

Yes, in hindsight I was too shellshocked by our previous experience
with dri2 invalidate, ifdefs, and untested paths to even consider
allowing new code to build with old proto.  But breaking bisect is bad,
no doubt.

But in this case adding a separate struct is probably the right thing
to do, and I'd be happy to do it if people are willing to put up with
the churn (glproto 1.4.14, dri2proto 2.5 plus changes to Mesa and X to
use the new struct).

Jesse Barnes, Intel Open Source Technology Center

More information about the mesa-dev mailing list