diff options
author | Simon Ser <contact@emersion.fr> | 2019-11-16 22:15:33 +0100 |
---|---|---|
committer | Simon Ser <contact@emersion.fr> | 2019-11-17 00:12:59 +0100 |
commit | 6c649bab537f75ebf4def87be2a59c860bcc6859 (patch) | |
tree | f1ef6d6c2896ac3f03f97a2b0be4003f4b214b67 /backend/drm/drm.c | |
parent | cde544de81b3da6368c3f88fe6d08df0b4bc198e (diff) |
output: add wlr_output_event_present.commit_seq
This is set to the value of wlr_output.commit_seq when the frame has
been submitted. This allows tracking presentation with more then 1 full
frame of latency.
References: https://github.com/swaywm/wlroots/issues/1917
Diffstat (limited to 'backend/drm/drm.c')
-rw-r--r-- | backend/drm/drm.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/backend/drm/drm.c b/backend/drm/drm.c index 9bcafeb6..fc6834ff 100644 --- a/backend/drm/drm.c +++ b/backend/drm/drm.c @@ -1497,6 +1497,9 @@ static void page_flip_handler(int fd, unsigned seq, .tv_nsec = tv_usec * 1000, }; struct wlr_output_event_present present_event = { + /* The DRM backend guarantees that the presentation event will be for + * the last submitted frame. */ + .commit_seq = conn->output.commit_seq, .when = &present_time, .seq = seq, .refresh = mhz_to_nsec(conn->output.refresh), |