forked from Minki/linux
[media] af9035: unlock on error in af9035_i2c_master_xfer()
We introduced a couple new error paths which are missing unlocks.
Fixes: 7760e14835
('[media] af9035: Don't use dynamic static allocation')
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Acked-by: Antti Palosaari <crope@iki.fi>
Signed-off-by: Antti Palosaari <crope@iki.fi>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Cc: stable@vger.kernel.org
This commit is contained in:
parent
d18a88b1f5
commit
3189ef0290
@ -245,7 +245,8 @@ static int af9035_i2c_master_xfer(struct i2c_adapter *adap,
|
||||
dev_warn(&d->udev->dev,
|
||||
"%s: i2c xfer: len=%d is too big!\n",
|
||||
KBUILD_MODNAME, msg[0].len);
|
||||
return -EOPNOTSUPP;
|
||||
ret = -EOPNOTSUPP;
|
||||
goto unlock;
|
||||
}
|
||||
req.mbox |= ((msg[0].addr & 0x80) >> 3);
|
||||
buf[0] = msg[1].len;
|
||||
@ -281,7 +282,8 @@ static int af9035_i2c_master_xfer(struct i2c_adapter *adap,
|
||||
dev_warn(&d->udev->dev,
|
||||
"%s: i2c xfer: len=%d is too big!\n",
|
||||
KBUILD_MODNAME, msg[0].len);
|
||||
return -EOPNOTSUPP;
|
||||
ret = -EOPNOTSUPP;
|
||||
goto unlock;
|
||||
}
|
||||
req.mbox |= ((msg[0].addr & 0x80) >> 3);
|
||||
buf[0] = msg[0].len;
|
||||
@ -319,6 +321,7 @@ static int af9035_i2c_master_xfer(struct i2c_adapter *adap,
|
||||
ret = -EOPNOTSUPP;
|
||||
}
|
||||
|
||||
unlock:
|
||||
mutex_unlock(&d->i2c_mutex);
|
||||
|
||||
if (ret < 0)
|
||||
|
Loading…
Reference in New Issue
Block a user