[Intel-gfx] [PATCH 4/4] drm/i915: Check for NULL atomic state in intel_crtc_disable_noatomic()

Ville Syrjälä ville.syrjala at linux.intel.com
Fri Jan 20 15:01:45 UTC 2017


On Fri, Jan 20, 2017 at 04:28:45PM +0200, Ander Conselvan de Oliveira wrote:
> In intel_crtc_disable_noatomic(), bail on a failure to allocate an
> atomic state to avoid a NULL pointer dereference.
> 
> Found by coverity.
> 
> Fixes: 4a80655827af ("drm/i915: Pass atomic state to crtc enable/disable functions")
> Cc: Maarten Lankhorst <maarten.lankhorst at linux.intel.com>
> Cc: Daniel Vetter <daniel.vetter at ffwll.ch>
> Cc: Daniel Vetter <daniel.vetter at intel.com>
> Cc: Jani Nikula <jani.nikula at linux.intel.com>
> Cc: intel-gfx at lists.freedesktop.org
> Cc: <stable at vger.kernel.org> # v4.9+
> Signed-off-by: Ander Conselvan de Oliveira <ander.conselvan.de.oliveira at intel.com>

Reviewed-by: Ville Syrjälä <ville.syrjala at linux.intel.com>

> ---
>  drivers/gpu/drm/i915/intel_display.c | 6 ++++++
>  1 file changed, 6 insertions(+)
> 
> diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
> index 0759e8b..38d5178 100644
> --- a/drivers/gpu/drm/i915/intel_display.c
> +++ b/drivers/gpu/drm/i915/intel_display.c
> @@ -6882,6 +6882,12 @@ static void intel_crtc_disable_noatomic(struct drm_crtc *crtc)
>  	}
>  
>  	state = drm_atomic_state_alloc(crtc->dev);
> +	if (!state) {
> +		DRM_DEBUG_KMS("failed to disable [CRTC:%d:%s], out of memory",
> +			      crtc->base.id, crtc->name);
> +		return;
> +	}
> +
>  	state->acquire_ctx = crtc->dev->mode_config.acquire_ctx;
>  
>  	/* Everything's already locked, -EDEADLK can't happen. */
> -- 
> 2.5.5
> 
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx

-- 
Ville Syrjälä
Intel OTC


More information about the Intel-gfx mailing list