[Intel-gfx] [PATCH 3/3] drm/i915: cancel the panel VDD work when we do it manually

Daniel Vetter daniel at ffwll.ch
Thu Oct 31 12:11:19 CET 2013


On Wed, Oct 30, 2013 at 07:50:28PM -0200, Paulo Zanoni wrote:
> From: Paulo Zanoni <paulo.r.zanoni at intel.com>
> 
> After I reorganized the panel VDD debug messages I was able to spot we
> were disabling it one extra time. The problem is that we're missing
> the call to cancel the delayed work in one of the instances where we
> manually call ironlake_panel_vdd_off_sync().
> 
> Signed-off-by: Paulo Zanoni <paulo.r.zanoni at intel.com>
> ---
>  drivers/gpu/drm/i915/intel_dp.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/drivers/gpu/drm/i915/intel_dp.c b/drivers/gpu/drm/i915/intel_dp.c
> index 8db1fda..f2280b4 100644
> --- a/drivers/gpu/drm/i915/intel_dp.c
> +++ b/drivers/gpu/drm/i915/intel_dp.c
> @@ -1159,6 +1159,7 @@ void ironlake_edp_panel_vdd_off(struct intel_dp *intel_dp, bool sync)
>  	intel_dp->want_panel_vdd = false;
>  
>  	if (sync) {
> +		cancel_delayed_work_sync(&intel_dp->panel_vdd_work);

This will deadlock since we hold the mode_config.mutex here, and the
panel_vdd_work also needs that. I've merged the other two patches.
-Daniel

>  		ironlake_panel_vdd_off_sync(intel_dp);
>  	} else {
>  		/*
> -- 
> 1.8.3.1
> 
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/intel-gfx

-- 
Daniel Vetter
Software Engineer, Intel Corporation
+41 (0) 79 365 57 48 - http://blog.ffwll.ch



More information about the Intel-gfx mailing list