[1/4] V4L: cx231xx, fix lock imbalance
Commit Message
Stanse found that there is mutex_lock in a fail path of
cx231xx_i2c_xfer instead of mutex_unlock (i.e. double lock + leaving a
function in locked state). So fix that.
Signed-off-by: Jiri Slaby <jslaby@suse.cz>
Cc: Mauro Carvalho Chehab <mchehab@redhat.com>
Cc: Devin Heitmueller <dheitmueller@hauppauge.com>
---
drivers/media/video/cx231xx/cx231xx-i2c.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
Comments
On Wed, Oct 27, 2010 at 7:47 AM, Jiri Slaby <jslaby@suse.cz> wrote:
> Stanse found that there is mutex_lock in a fail path of
> cx231xx_i2c_xfer instead of mutex_unlock (i.e. double lock + leaving a
> function in locked state). So fix that.
>
> Signed-off-by: Jiri Slaby <jslaby@suse.cz>
> Cc: Mauro Carvalho Chehab <mchehab@redhat.com>
> Cc: Devin Heitmueller <dheitmueller@hauppauge.com>
This was already reported and a patch was submitted by Dan Carpenter
on October 21. See mail on that day with subject line: "[patch]
V4L/DVB: cx231xx: fix double lock typo".
Cheers,
Devin
@@ -372,7 +372,7 @@ static int cx231xx_i2c_xfer(struct i2c_adapter *i2c_adap,
rc = cx231xx_i2c_check_for_device(i2c_adap, &msgs[i]);
if (rc < 0) {
dprintk2(2, " no device\n");
- mutex_lock(&dev->i2c_lock);
+ mutex_unlock(&dev->i2c_lock);
return rc;
}