diff options
author | Dan Carpenter <error27@gmail.com> | 2009-03-27 06:34:28 -0400 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2009-03-29 04:31:47 -0400 |
commit | dba5ed0cd12d8db5c0d2e1c869c2a50c5bcf6743 (patch) | |
tree | 2f3eae8165b595270c77e7c591701d86c4e3aeac /drivers/gpu/drm/drm_fops.c | |
parent | c972d750e4fa3bfee6e7d3635729bf8c9cbb8f0a (diff) |
drm: drm_fops.c unlock missing on error path
drm_open_helper() from drm_fops.c had a missing mutex_unlock in a error
path.
This was caught by smatch (http://repo.or.cz/w/smatch.git/). Compile
tested.
Signed-off-by: Dan Carpenter <error27@gmail.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
Diffstat (limited to 'drivers/gpu/drm/drm_fops.c')
-rw-r--r-- | drivers/gpu/drm/drm_fops.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/gpu/drm/drm_fops.c b/drivers/gpu/drm/drm_fops.c index e13cb62bbaee..09a3571c9908 100644 --- a/drivers/gpu/drm/drm_fops.c +++ b/drivers/gpu/drm/drm_fops.c | |||
@@ -274,6 +274,7 @@ static int drm_open_helper(struct inode *inode, struct file *filp, | |||
274 | /* create a new master */ | 274 | /* create a new master */ |
275 | priv->minor->master = drm_master_create(priv->minor); | 275 | priv->minor->master = drm_master_create(priv->minor); |
276 | if (!priv->minor->master) { | 276 | if (!priv->minor->master) { |
277 | mutex_unlock(&dev->struct_mutex); | ||
277 | ret = -ENOMEM; | 278 | ret = -ENOMEM; |
278 | goto out_free; | 279 | goto out_free; |
279 | } | 280 | } |