[PATCH] drm: Remove warning from drm_connector_unregister_all()

Daniel Vetter daniel at ffwll.ch
Thu Apr 21 07:17:46 UTC 2016


On Thu, Apr 21, 2016 at 01:21:14AM +0300, Laurent Pinchart wrote:
> Commit 6c87e5c3ec6d ("drm: Rename drm_connector_unplug_all() to
> drm_connector_unregister_all()") replaced a manual connectors list walk
> in drm_connector_unregister_all() with drm_for_each_connector(). The
> list was walked without the mode config mutex locked as that ends up in
> a clash with sysfs, but drm_connector_unregister_all() warns when the
> mutex isn't locked.
> 
> The problem is known and doesn't require a large warning every time
> drm_connector_unregister_all() is called. Fix it by reverting to manual
> list walk.
> 
> Fixes: 6c87e5c3ec6d ("drm: Rename drm_connector_unplug_all() to drm_connector_unregister_all()")
> Signed-off-by: Laurent Pinchart <laurent.pinchart+renesas at ideasonboard.com>

My apologies for missing this when reviewing the patch. Applied to
drm-misc, thanks.
-Daniel

> ---
>  drivers/gpu/drm/drm_crtc.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/gpu/drm/drm_crtc.c b/drivers/gpu/drm/drm_crtc.c
> index 55ffde5a3a4a..1eab5ab472db 100644
> --- a/drivers/gpu/drm/drm_crtc.c
> +++ b/drivers/gpu/drm/drm_crtc.c
> @@ -1082,7 +1082,7 @@ void drm_connector_unregister_all(struct drm_device *dev)
>  	struct drm_connector *connector;
>  
>  	/* FIXME: taking the mode config mutex ends up in a clash with sysfs */
> -	drm_for_each_connector(connector, dev)
> +	list_for_each_entry(connector, &dev->mode_config.connector_list, head)
>  		drm_connector_unregister(connector);
>  }
>  EXPORT_SYMBOL(drm_connector_unregister_all);
> -- 
> Regards,
> 
> Laurent Pinchart
> 

-- 
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch


More information about the dri-devel mailing list