diff options
author | Keith Packard <[email protected]> | 2013-11-25 21:14:55 -0800 |
---|---|---|
committer | Eric Anholt <[email protected]> | 2014-01-30 16:35:00 -0800 |
commit | 71d614250ed1f83d8da3adb8e855ee00201c70da (patch) | |
tree | adae5edc4621fae18680b5511f37038598734db1 /src/glx/dri3_priv.h | |
parent | 34a8a0820fa08037acd0e4fbc368d72c1a6209f1 (diff) |
dri3: Track full 64-bit SBC numbers, instead of just 32-bits
Tracking the full 64-bit SBC values makes it clearer how those values are
being used, and simplifies the wait_msc code. The only trick is in
re-constructing the full 64-bit value from Present's 32-bit serial number
that we use to pass the SBC value from request to event.
Signed-off-by: Keith Packard <[email protected]>
Reviewed-by: Eric Anholt <[email protected]>
Diffstat (limited to 'src/glx/dri3_priv.h')
-rw-r--r-- | src/glx/dri3_priv.h | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/src/glx/dri3_priv.h b/src/glx/dri3_priv.h index 682849386ab..9d142cf5137 100644 --- a/src/glx/dri3_priv.h +++ b/src/glx/dri3_priv.h @@ -183,16 +183,18 @@ struct dri3_drawable { uint8_t have_fake_front; uint8_t is_pixmap; - uint32_t present_request_serial; - uint32_t present_event_serial; - - uint64_t sbc; + /* SBC numbers are tracked by using the serial numbers + * in the present request and complete events + */ + uint64_t send_sbc; + uint64_t recv_sbc; + /* Last received UST/MSC values */ uint64_t ust, msc; - /* For WaitMSC */ - uint32_t present_msc_request_serial; - uint32_t present_msc_event_serial; + /* Serial numbers for tracking wait_for_msc events */ + uint32_t send_msc_serial; + uint32_t recv_msc_serial; struct dri3_buffer *buffers[DRI3_NUM_BUFFERS]; int cur_back; |