[PATCH v4 2/2] drm/drm_vblank: set the dma-fence timestamp during send_vblank_event

John Stultz john.stultz at linaro.org
Tue Jan 19 20:31:19 UTC 2021


On Fri, Jan 15, 2021 at 4:31 PM Veera Sundaram Sankaran
<veeras at codeaurora.org> wrote:
>
> The explicit out-fences in crtc are signaled as part of vblank event,
> indicating all framebuffers present on the Atomic Commit request are
> scanned out on the screen. Though the fence signal and the vblank event
> notification happens at the same time, triggered by the same hardware
> vsync event, the timestamp set in both are different. With drivers
> supporting precise vblank timestamp the difference between the two
> timestamps would be even higher. This might have an impact on use-mode
> frameworks using these fence timestamps for purposes other than simple
> buffer usage. For instance, the Android framework [1] uses the
> retire-fences as an alternative to vblank when frame-updates are in
> progress. Set the fence timestamp during send vblank event using a new
> drm_send_event_timestamp_locked variant to avoid discrepancies.
>
> [1] https://android.googlesource.com/platform/frameworks/native/+/master/
> services/surfaceflinger/Scheduler/Scheduler.cpp#397
>
> Changes in v2:
> - Use drm_send_event_timestamp_locked to update fence timestamp
> - add more information to commit text
>
> Changes in v3:
> - use same backend helper function for variants of drm_send_event to
> avoid code duplications
>
> Changes in v4:
> - remove WARN_ON from drm_send_event_timestamp_locked
>
> Signed-off-by: Veera Sundaram Sankaran <veeras at codeaurora.org>
> ---

Looks good, as expected no longer seeing the warning.

Reviewed-by: John Stultz <john.stultz at linaro.org>

thanks
-john


More information about the dri-devel mailing list