[PATCH v3] drm/TODO: Add drm_display_mode.hsync/vrefresh removal
Sean Paul
sean at poorly.run
Thu Jan 31 19:09:32 UTC 2019
On Tue, Jan 29, 2019 at 02:26:29PM -0500, Sean Paul wrote:
> From: Sean Paul <seanpaul at 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 at linux.intel.com>
> Suggested-by: Daniel Vetter <daniel at ffwll.ch>
> Reviewed-by: Daniel Vetter <daniel at ffwll.ch>
> Reviewed-by: Sam Ravnborg <sam at ravnborg.org>
> Bonus-points-awarded-by: Sam Ravnborg <sam at ravnborg.org>
> Signed-off-by: Sean Paul <seanpaul at 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
>
--
Sean Paul, Software Engineer, Google / Chromium OS
More information about the dri-devel
mailing list