diff options
author | Jiri Slaby <jslaby@suse.cz> | 2010-04-27 14:11:03 -0700 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2010-04-28 18:41:52 +1000 |
commit | 8c88e50bcf7f9f7e1b4987aaac3dfacc3ac6bd24 (patch) | |
tree | c10e68f52a3fc35bf46ba24bf433d244934bbf5e /drivers/gpu/vga/vga_switcheroo.c | |
parent | 404b017d00a9f472bdf725a06892d42f1cba5ed8 (diff) |
gpu: vga_switcheroo, fix lock imbalance
Stanse found that one error path in vga_switcheroo_debugfs_write omits to
unlock vgasr_mutex. Fix that.
Signed-off-by: Jiri Slaby <jslaby@suse.cz>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Dave Airlie <airlied@redhat.com>
Diffstat (limited to 'drivers/gpu/vga/vga_switcheroo.c')
-rw-r--r-- | drivers/gpu/vga/vga_switcheroo.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/gpu/vga/vga_switcheroo.c b/drivers/gpu/vga/vga_switcheroo.c index d6d1149d525..c8768f38511 100644 --- a/drivers/gpu/vga/vga_switcheroo.c +++ b/drivers/gpu/vga/vga_switcheroo.c @@ -276,8 +276,10 @@ vga_switcheroo_debugfs_write(struct file *filp, const char __user *ubuf, mutex_lock(&vgasr_mutex); - if (!vgasr_priv.active) - return -EINVAL; + if (!vgasr_priv.active) { + cnt = -EINVAL; + goto out; + } /* pwr off the device not in use */ if (strncmp(usercmd, "OFF", 3) == 0) { |