• Michel Dänzer's avatar
    dix: Pass ClientPtr to FlushCallback · 65b6a62b
    Michel Dänzer authored
     Backported X.org commits:
    
     commit b380f3ac51f40ffefcde7d3db5c4c149f274246d
     Author: Michel Dänzer <michel.daenzer@amd.com>
     Date:   Tue Aug 2 17:53:01 2016 +0900
    
        dix: Pass ClientPtr to FlushCallback
    
        This change has two effects:
    
        1. Only calls FlushCallbacks when we're actually flushing data to a
           client. The unnecessary FlushCallback calls could cause significant
           performance degradation with compositing, which is significantly
           reduced even without any driver changes.
    
        2. By passing the ClientPtr to FlushCallbacks, drivers can completely
           eliminate unnecessary flushing of GPU commands by keeping track of
           whether we're flushing any XDamageNotify events to the client for
           which the corresponding rendering commands haven't been flushed to
           the GPU yet.
    Reviewed-by: 's avatarAdam Jackson <ajax@redha.com>
    Signed-off-by: 's avatarMichel Dänzer <michel.daenzer@amd.com>
    
     commit c65f610e12f9df168d5639534ed3c2bd40afffc8
     Author: Kristian Høgsberg <krh@bitplanet.net>
     Date:   Thu Jul 29 18:52:35 2010 -0400
    
        Always call the flush callback chain when we flush client buffers
    
        We were missing the callback in a couple of places.  Drivers may use
        the flush callback to submit batched up rendering before events (for
        example, damage events) are sent out, to ensure that the rendering
        has been queued when the client receives the event.
    Signed-off-by: 's avatarKristian Høgsberg <krh@bitplanet.net>
    Reviewed-by: 's avatarKeith Packard <keithp@keithp.com>
    Backported-to-NX-by: 's avatarMike Gabriel <mike.gabriel@das-netzwerkteam.de>
    65b6a62b
Name
Last commit
Last update
..
config Loading commit data...
extras/Mesa Loading commit data...
include Loading commit data...
lib Loading commit data...
programs Loading commit data...
.gitignore Loading commit data...
Imakefile Loading commit data...
Makefile Loading commit data...
x-indent-all.sh Loading commit data...
x-indent.sh Loading commit data...