[PATCH 17/18] drm/i915/pm: Prefer drm_WARN_ON over WARN_ON
Jani Nikula
jani.nikula at linux.intel.com
Tue Apr 21 08:26:22 UTC 2020
On Mon, 06 Apr 2020, Pankaj Bharadiya <pankaj.laxminarayan.bharadiya at intel.com> wrote:
> struct drm_device specific drm_WARN* macros include device information
> in the backtrace, so we know what device the warnings originate from.
>
> Prefer drm_WARN_ON over WARN_ON.
>
> Conversion is done with below sementic patch:
>
> @@
> identifier func, T;
> @@
> func(...) {
> ...
> struct intel_crtc *T = ...;
> <+...
> -WARN_ON(
> +drm_WARN_ON(T->base.dev,
> ...)
> ...+>
>
> }
>
> @@
> identifier func, T;
> @@
> func(struct intel_crtc_state *T,...) {
> <+...
> -WARN_ON(
> +drm_WARN_ON(T->uapi.crtc->dev,
> ...)
> ...+>
>
> }
>
> Signed-off-by: Pankaj Bharadiya <pankaj.laxminarayan.bharadiya at intel.com>
> ---
> drivers/gpu/drm/i915/intel_pm.c | 57 ++++++++++++++++++---------------
> 1 file changed, 32 insertions(+), 25 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/intel_pm.c b/drivers/gpu/drm/i915/intel_pm.c
> index 8375054ba27d..b2d22fdaf3db 100644
> --- a/drivers/gpu/drm/i915/intel_pm.c
> +++ b/drivers/gpu/drm/i915/intel_pm.c
> @@ -1464,8 +1464,8 @@ static int g4x_compute_intermediate_wm(struct intel_crtc_state *new_crtc_state)
> max(optimal->wm.plane[plane_id],
> active->wm.plane[plane_id]);
>
> - WARN_ON(intermediate->wm.plane[plane_id] >
> - g4x_plane_fifo_size(plane_id, G4X_WM_LEVEL_NORMAL));
> + drm_WARN_ON(crtc->base.dev, intermediate->wm.plane[plane_id] >
> + g4x_plane_fifo_size(plane_id, G4X_WM_LEVEL_NORMAL));
> }
>
> intermediate->sr.plane = max(optimal->sr.plane,
> @@ -1482,21 +1482,25 @@ static int g4x_compute_intermediate_wm(struct intel_crtc_state *new_crtc_state)
> intermediate->hpll.fbc = max(optimal->hpll.fbc,
> active->hpll.fbc);
>
> - WARN_ON((intermediate->sr.plane >
> - g4x_plane_fifo_size(PLANE_PRIMARY, G4X_WM_LEVEL_SR) ||
> - intermediate->sr.cursor >
> - g4x_plane_fifo_size(PLANE_CURSOR, G4X_WM_LEVEL_SR)) &&
> - intermediate->cxsr);
> - WARN_ON((intermediate->sr.plane >
> - g4x_plane_fifo_size(PLANE_PRIMARY, G4X_WM_LEVEL_HPLL) ||
> - intermediate->sr.cursor >
> - g4x_plane_fifo_size(PLANE_CURSOR, G4X_WM_LEVEL_HPLL)) &&
> - intermediate->hpll_en);
> -
> - WARN_ON(intermediate->sr.fbc > g4x_fbc_fifo_size(1) &&
> - intermediate->fbc_en && intermediate->cxsr);
> - WARN_ON(intermediate->hpll.fbc > g4x_fbc_fifo_size(2) &&
> - intermediate->fbc_en && intermediate->hpll_en);
> + drm_WARN_ON(crtc->base.dev,
> + (intermediate->sr.plane >
> + g4x_plane_fifo_size(PLANE_PRIMARY, G4X_WM_LEVEL_SR) ||
> + intermediate->sr.cursor >
> + g4x_plane_fifo_size(PLANE_CURSOR, G4X_WM_LEVEL_SR)) &&
> + intermediate->cxsr);
> + drm_WARN_ON(crtc->base.dev,
> + (intermediate->sr.plane >
> + g4x_plane_fifo_size(PLANE_PRIMARY, G4X_WM_LEVEL_HPLL) ||
> + intermediate->sr.cursor >
> + g4x_plane_fifo_size(PLANE_CURSOR, G4X_WM_LEVEL_HPLL)) &&
> + intermediate->hpll_en);
> +
> + drm_WARN_ON(crtc->base.dev,
> + intermediate->sr.fbc > g4x_fbc_fifo_size(1) &&
> + intermediate->fbc_en && intermediate->cxsr);
> + drm_WARN_ON(crtc->base.dev,
> + intermediate->hpll.fbc > g4x_fbc_fifo_size(2) &&
> + intermediate->fbc_en && intermediate->hpll_en);
Please add a i915 local variable and use &i915->drm.
>
> out:
> /*
> @@ -1748,11 +1752,11 @@ static int vlv_compute_fifo(struct intel_crtc_state *crtc_state)
> fifo_left -= plane_extra;
> }
>
> - WARN_ON(active_planes != 0 && fifo_left != 0);
> + drm_WARN_ON(crtc->base.dev, active_planes != 0 && fifo_left != 0);
>
> /* give it all to the first plane if none are active */
> if (active_planes == 0) {
> - WARN_ON(fifo_left != fifo_size);
> + drm_WARN_ON(crtc->base.dev, fifo_left != fifo_size);
> fifo_state->plane[PLANE_PRIMARY] = fifo_left;
> }
>
> @@ -4154,7 +4158,8 @@ skl_plane_downscale_amount(const struct intel_crtc_state *crtc_state,
> uint_fixed_16_16_t fp_w_ratio, fp_h_ratio;
> uint_fixed_16_16_t downscale_h, downscale_w;
>
> - if (WARN_ON(!intel_wm_plane_visible(crtc_state, plane_state)))
> + if (drm_WARN_ON(crtc_state->uapi.crtc->dev,
> + !intel_wm_plane_visible(crtc_state, plane_state)))
> return u32_to_fixed16(0);
>
> /*
> @@ -4815,7 +4820,7 @@ intel_get_linetime_us(const struct intel_crtc_state *crtc_state)
>
> pixel_rate = crtc_state->pixel_rate;
>
> - if (WARN_ON(pixel_rate == 0))
> + if (drm_WARN_ON(crtc_state->uapi.crtc->dev, pixel_rate == 0))
> return u32_to_fixed16(0);
>
> crtc_htotal = crtc_state->hw.adjusted_mode.crtc_htotal;
> @@ -4832,7 +4837,8 @@ skl_adjusted_plane_pixel_rate(const struct intel_crtc_state *crtc_state,
> uint_fixed_16_16_t downscale_amount;
>
> /* Shouldn't reach here on disabled planes... */
> - if (WARN_ON(!intel_wm_plane_visible(crtc_state, plane_state)))
> + if (drm_WARN_ON(crtc_state->uapi.crtc->dev,
> + !intel_wm_plane_visible(crtc_state, plane_state)))
> return 0;
>
> /*
> @@ -5261,9 +5267,10 @@ static int icl_build_plane_wm(struct intel_crtc_state *crtc_state,
> const struct drm_framebuffer *fb = plane_state->hw.fb;
> enum plane_id y_plane_id = plane_state->planar_linked_plane->id;
>
> - WARN_ON(!intel_wm_plane_visible(crtc_state, plane_state));
> - WARN_ON(!fb->format->is_yuv ||
> - fb->format->num_planes == 1);
> + drm_WARN_ON(crtc_state->uapi.crtc->dev,
> + !intel_wm_plane_visible(crtc_state, plane_state));
> + drm_WARN_ON(crtc_state->uapi.crtc->dev, !fb->format->is_yuv ||
> + fb->format->num_planes == 1);
Ditto.
BR,
Jani.
>
> ret = skl_build_plane_wm_single(crtc_state, plane_state,
> y_plane_id, 0);
--
Jani Nikula, Intel Open Source Graphics Center
More information about the dri-devel
mailing list