Intel-GFX Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [Intel-gfx] [PATCH] drm/atomic-helper: Don't set deadline for modesets
@ 2023-04-05  8:16 Daniel Vetter
  2023-04-05 12:25 ` Ville Syrjälä
                   ` (4 more replies)
  0 siblings, 5 replies; 10+ messages in thread
From: Daniel Vetter @ 2023-04-05  8:16 UTC (permalink / raw)
  To: DRI Development
  Cc: Rob Clark, Daniel Vetter, Intel Graphics Development,
	Maxime Ripard, Thomas Zimmermann, Dmitry Baryshkov, Daniel Vetter

If the crtc is being switched on or off then the semantics of
computing the timestampe of the next vblank is somewhat ill-defined.
And indeed, the code splats with a warning in the timestamp
computation code. Specifically it hits the check to make sure that
atomic drivers have full set up the timing constants in the drm_vblank
structure, and that's just not the case before the crtc is actually
on.

For robustness it seems best to just not set deadlines for modesets.

Link: https://lore.kernel.org/dri-devel/dfc21f18-7e1e-48f0-c05a-d659b9c90b91@linaro.org/
Fixes: d39e48ca80c0 ("drm/atomic-helper: Set fence deadline for vblank")
Cc: Rob Clark <robdclark@chromium.org>
Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Cc: Maxime Ripard <mripard@kernel.org>
Cc: Thomas Zimmermann <tzimmermann@suse.de>
Reported-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Tested-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org> # test patch only
Cc: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
---
 drivers/gpu/drm/drm_atomic_helper.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/gpu/drm/drm_atomic_helper.c b/drivers/gpu/drm/drm_atomic_helper.c
index f21b5a74176c..6640d80d84f3 100644
--- a/drivers/gpu/drm/drm_atomic_helper.c
+++ b/drivers/gpu/drm/drm_atomic_helper.c
@@ -1528,6 +1528,9 @@ static void set_fence_deadline(struct drm_device *dev,
 	for_each_new_crtc_in_state (state, crtc, new_crtc_state, i) {
 		ktime_t v;
 
+		if (drm_atomic_crtc_needs_modeset(new_crtc_state))
+			continue;
+
 		if (drm_crtc_next_vblank_start(crtc, &v))
 			continue;
 
-- 
2.40.0


^ permalink raw reply related	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2023-04-06 13:36 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-04-05  8:16 [Intel-gfx] [PATCH] drm/atomic-helper: Don't set deadline for modesets Daniel Vetter
2023-04-05 12:25 ` Ville Syrjälä
2023-04-05 13:30   ` Daniel Vetter
2023-04-05 13:31 ` Daniel Vetter
2023-04-05 13:40   ` Ville Syrjälä
2023-04-05 13:50   ` Rob Clark
2023-04-06  5:33     ` Daniel Vetter
2023-04-05 21:20 ` [Intel-gfx] ✗ Fi.CI.CHECKPATCH: warning for drm/atomic-helper: Don't set deadline for modesets (rev2) Patchwork
2023-04-05 21:34 ` [Intel-gfx] ✓ Fi.CI.BAT: success " Patchwork
2023-04-06 13:36 ` [Intel-gfx] ✓ Fi.CI.IGT: " Patchwork

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox