On Thu, Feb 20, 2025 at 10:53:57AM +0100, Simona Vetter wrote: > On Wed, Feb 19, 2025 at 06:02:39PM +0200, Ville Syrjala wrote: > > From: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx> > > > > Video players (eg. mpv) do periodic XResetScreenSaver() calls to > > keep the screen on while the video playing. The modesetting ddx > > plumbs these straight through into the kernel as DPMS setproperty > > ioctls, without any filtering whatsoever. When implemented via > > atomic these end up as full commits on the crtc, which leads to a > > dropped frame every time XResetScreenSaver() is called. > > I think you should add here that it's just an empty commit, because we do > filter out redundant commits where crtc->active_changed does nothing. > Except we still run the entire machinery with timestamps and drm_event and > everything. > > And I don't think it's worth to filter that out at the atomic level, > because it's really only legacy ioctl that had this "complete noop" > behaviour. > > With the commit message augmented: > > Reviewed-by: Simona Vetter <simona.vetter@xxxxxxxx> > > Might also be nice to have a igt for this? kms_flip was basically doing everything we want already, so added one more subtest for this: https://lore.kernel.org/igt-dev/20250228194240.20023-1-ville.syrjala@xxxxxxxxxxxxxxx/T/#u > Plus also wondering whether we > should cc: stable it. I guess we could. I've been running this for who knows how long anyway (just never got around to sending it), so should be fairly safe. -- Ville Syrjälä Intel