diff options
author | Daniel Vetter <daniel.vetter@ffwll.ch> | 2015-06-23 12:33:47 +0200 |
---|---|---|
committer | Daniel Vetter <daniel.vetter@ffwll.ch> | 2015-06-23 12:33:47 +0200 |
commit | d15d1fff7ae3b030ec863a1bf2e1c06d5d10a801 (patch) | |
tree | 92598f7635b43c3ebf52c7c57494cd64d4dc47dd | |
parent | c2b9fe774cff76f8fa013c2064d7a3d62012d23a (diff) |
fixup fbdev helpersdrm_for_each
-rw-r--r-- | drivers/gpu/drm/drm_fb_helper.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/drivers/gpu/drm/drm_fb_helper.c b/drivers/gpu/drm/drm_fb_helper.c index 3630d92c9738..33803db0281a 100644 --- a/drivers/gpu/drm/drm_fb_helper.c +++ b/drivers/gpu/drm/drm_fb_helper.c @@ -98,16 +98,20 @@ int drm_fb_helper_single_add_all_connectors(struct drm_fb_helper *fb_helper) struct drm_connector *connector; int i; + mutex_lock(&dev->mode_config.mutex); drm_for_each_connector(connector, dev) { struct drm_fb_helper_connector *fb_helper_connector; fb_helper_connector = kzalloc(sizeof(struct drm_fb_helper_connector), GFP_KERNEL); - if (!fb_helper_connector) + if (!fb_helper_connector) { + mutex_unlock(&dev->mode_config.mutex); goto fail; + } fb_helper_connector->connector = connector; fb_helper->connector_info[fb_helper->connector_count++] = fb_helper_connector; } + mutex_unlock(&dev->mode_config.mutex); return 0; fail: for (i = 0; i < fb_helper->connector_count; i++) { |