[PATCH xserver (v3) 00/10] X Server support for Fence Sync

James Jones jajones at nvidia.com
Mon Dec 6 14:59:17 PST 2010


On Sunday 05 December 2010 9:39:45 pm Keith Packard wrote:
> * PGP Signed by an unknown key
> 
> On Sun, 5 Dec 2010 19:25:25 -0800, James Jones <jajones at nvidia.com> wrote:
> > Now without damage changes.
> > 
> > Implements X Sync Fence Objects in the server, including
> > the damage 1.2 support for DamageSubtractAndTrigger.  Re-
> > uses X Sync Counter code wherever possible.  A driver
> > interface has also been added so DDX drivers can redirect
> > fence sync operations to HW rendering backend operations.
> 
> Some patch-sequencing suggestions:
> 
>  * Do all of the API rework *before* adding the
>    new data type. So, the work to add the SyncObject
>    base type should be done first.
> 
>  * Moving code to miext is part of this rework.
> 
>  * Add all of the request processing code for all of the
>    new requests before adding the dispatching hooks
>    to get at this. This will allow people to bisect
>    through the patch without exposing a broken version
>    of the extension to applications
> 
>  * Finally, update the reported extension version and
>    hook up the dispatch vectors.
> 
> Take a look at how I added the RandR 1.4 functionality in that patch
> sequence. It's not perfect, and could use some more re-sequencing, but
> it's at least usable at each point.
> 
> The main thing is to isolate the rework needed to implement the new
> functionality from the new functionality itself. We also don't need to
> see intermediate bug fixes and reworking of the code. The goal is not to
> present the actual sequence of development, but to provide patches that
> are as easy to review as possible.
> 
> The finished code looks quite good though, I'd rather see if you can't
> clean up the individual patches before I start wading through a review
> pass.

Took me a while to re-verify, but it's reworked and ready for review again.  
Thanks for the feedback.  Note it won't help a lot with bisect because XSync 
wasn't using protocol-versions.h, but it is better organized now.  I avoided 
squashing too many commits because I didn't want to make the individual 
patches too large, or change and move the same code in one commit (kills diff 
readability).

Thanks,
-James


More information about the xorg-devel mailing list