On Tue, Jan 29, 2019 at 02:26:29PM -0500, Sean Paul wrote:
From: Sean Paul seanpaul@chromium.org
Drivers shouldn't be using these values, add a TODO so someone removes them.
Changes in v2:
- Add drm_display_mode.vrefresh removal (Ville)
- Add Sam's R-b and bonus points
Changes in v3:
- Add hsync removal todo item (Daniel)
- Change vrefresh wording to make removal less optional
Cc: Ville Syrjälä ville.syrjala@linux.intel.com Suggested-by: Daniel Vetter daniel@ffwll.ch Reviewed-by: Daniel Vetter daniel@ffwll.ch Reviewed-by: Sam Ravnborg sam@ravnborg.org Bonus-points-awarded-by: Sam Ravnborg sam@ravnborg.org Signed-off-by: Sean Paul seanpaul@chromium.org
And applied to -misc-next.
Thanks for the reviews, all.
Sean
This time with feeling.
Documentation/gpu/todo.rst | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+)
diff --git a/Documentation/gpu/todo.rst b/Documentation/gpu/todo.rst index 38360ede12215..f67c84b92873c 100644 --- a/Documentation/gpu/todo.rst +++ b/Documentation/gpu/todo.rst @@ -262,6 +262,34 @@ As a reference, take a look at the conversions already completed in drm core.
Contact: Sean Paul, respective driver maintainers
+Convert direct mode.vrefresh accesses to use drm_mode_vrefresh() +----------------------------------------------------------------
+drm_display_mode.vrefresh isn't guaranteed to be populated. As such, using it +is risky and has been known to cause div-by-zero bugs. Fortunately, drm core +has helper which will use mode.vrefresh if it's !0 and will calculate it from +the timings when it's 0.
+Use simple search/replace, or (more fun) cocci to replace instances of direct +vrefresh access with a call to the helper. Check out +https://lists.freedesktop.org/archives/dri-devel/2019-January/205186.html for +inspiration.
+Once all instances of vrefresh have been converted, remove vrefresh from +drm_display_mode to avoid future use.
+Contact: Sean Paul
+Remove drm_display_mode.hsync +-----------------------------
+We have drm_mode_hsync() to calculate this from hsync_start/end, since drivers +shouldn't/don't use this, remove this member to avoid any temptations to use it +in the future. If there is any debug code using drm_display_mode.hsync, convert +it to use drm_mode_hsync() instead.
+Contact: Sean Paul
Core refactorings
-- Sean Paul, Software Engineer, Google / Chromium OS