[PATCH 0/2] Rate-limit shadow-FB-to-console-update to screen refresh
Thomas Zimmermann
tzimmermann at suse.de
Mon Sep 9 14:06:31 UTC 2019
A full-screen memcpy() moves the console's shadow buffer to hardware; with
possibly significant runtime overhead. [1]
The console's dirty worker now waits for the vblank to rate limit the
output frequency. Screen output can pile up while waiting and there's a
chance that multiple screen updates can be handled with a single memcpy().
Note that this has no effect on tearing: while the dirty worker updates
the hardware buffer, new data can still arrive in the shadow buffer. This
can create a tearing effcet, even though console output is synchronized
to vblank.
The patchset adds vblank support to mgag200, because the problem was first
reported with Matrox hardware.
[1] https://lists.freedesktop.org/archives/dri-devel/2019-July/228663.html
Thomas Zimmermann (2):
drm/fb-helper: Synchronize dirty worker with vblank
drm/mgag200: Add vblank support
drivers/gpu/drm/drm_fb_helper.c | 12 ++++++++
drivers/gpu/drm/mgag200/mgag200_drv.c | 1 +
drivers/gpu/drm/mgag200/mgag200_drv.h | 1 +
drivers/gpu/drm/mgag200/mgag200_main.c | 33 ++++++++++++++++++++
drivers/gpu/drm/mgag200/mgag200_mode.c | 42 +++++++++++++++++++++++---
5 files changed, 85 insertions(+), 4 deletions(-)
--
2.23.0
More information about the dri-devel
mailing list