summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/drm_fops.c
diff options
context:
space:
mode:
authorDan Carpenter <error27@gmail.com>2009-03-27 13:34:28 +0300
committerDave Airlie <airlied@redhat.com>2009-03-29 18:31:47 +1000
commitdba5ed0cd12d8db5c0d2e1c869c2a50c5bcf6743 (patch)
tree2f3eae8165b595270c77e7c591701d86c4e3aeac /drivers/gpu/drm/drm_fops.c
parentc972d750e4fa3bfee6e7d3635729bf8c9cbb8f0a (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.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/gpu/drm/drm_fops.c b/drivers/gpu/drm/drm_fops.c
index e13cb62bbae..09a3571c990 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,
/* create a new master */
priv->minor->master = drm_master_create(priv->minor);
if (!priv->minor->master) {
+ mutex_unlock(&dev->struct_mutex);
ret = -ENOMEM;
goto out_free;
}