diff options
author | Michel Dänzer <michel.daenzer@amd.com> | 2016-07-11 12:51:46 +0900 |
---|---|---|
committer | Michel Dänzer <michel@daenzer.net> | 2016-08-17 18:14:40 +0900 |
commit | 121a6de72da5fcf9a32408eff36b2235f3dfbcfe (patch) | |
tree | 443e310a3b86c48dbd5a1cf4297278cba547cd50 /src/radeon.h | |
parent | 9090309e057dc703d1a5bffd88e6cae14108cfc3 (diff) |
Keep track of damage event related flushes per-client v2
This further reduces the compositing slowdown due to flushing overhead,
by only flushing when the X server actually sends XDamageNotify events
to a client, and there hasn't been a flush yet in the meantime.
v2: Use ScreenPrivateKey, fixes invalid memory access with GPU screens
Reviewed-by: Alex Deucher <alexander.deucher@amd.com>
Diffstat (limited to 'src/radeon.h')
-rw-r--r-- | src/radeon.h | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/radeon.h b/src/radeon.h index 25ff61c6..f3a3e1c8 100644 --- a/src/radeon.h +++ b/src/radeon.h @@ -448,6 +448,10 @@ struct radeon_accel_state { Bool force; }; +struct radeon_client_priv { + uint_fast32_t needs_flush; +}; + typedef struct { EntityInfoPtr pEnt; pciVideoPtr PciInfo; @@ -474,7 +478,6 @@ typedef struct { Bool allowColorTiling; Bool allowColorTiling2D; int callback_event_type; - uint_fast32_t callback_needs_flush; uint_fast32_t gpu_flushed; uint_fast32_t gpu_synced; struct radeon_accel_state *accel_state; |