diff mbox series

media: smiapp: unlock on error in smiapp_start_streaming()

Message ID 20191029182401.GB17569@mwanda (mailing list archive)
State New, archived
Headers show
Series media: smiapp: unlock on error in smiapp_start_streaming() | expand

Commit Message

Dan Carpenter Oct. 29, 2019, 6:24 p.m. UTC
We added two new error paths to smiapp_start_streaming(), but we can't
return directly without dropping the "sensor->mutex" lock.

Fixes: f8c4352c1bef ("media: smiapp: Move binning configuration to streaming start")
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
---
 drivers/media/i2c/smiapp/smiapp-core.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

Comments

Sakari Ailus Oct. 30, 2019, 8:24 a.m. UTC | #1
On Tue, Oct 29, 2019 at 09:24:01PM +0300, Dan Carpenter wrote:
> We added two new error paths to smiapp_start_streaming(), but we can't
> return directly without dropping the "sensor->mutex" lock.
> 
> Fixes: f8c4352c1bef ("media: smiapp: Move binning configuration to streaming start")
> Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>

Thanks, Dan!
diff mbox series

Patch

diff --git a/drivers/media/i2c/smiapp/smiapp-core.c b/drivers/media/i2c/smiapp/smiapp-core.c
index 77dfce7c3be9..84f9771b5fed 100644
--- a/drivers/media/i2c/smiapp/smiapp-core.c
+++ b/drivers/media/i2c/smiapp/smiapp-core.c
@@ -1362,13 +1362,13 @@  static int smiapp_start_streaming(struct smiapp_sensor *sensor)
 		rval = smiapp_write(
 			sensor, SMIAPP_REG_U8_BINNING_TYPE, binning_type);
 		if (rval < 0)
-			return rval;
+			goto out;
 
 		binning_mode = 1;
 	}
 	rval = smiapp_write(sensor, SMIAPP_REG_U8_BINNING_MODE, binning_mode);
 	if (rval < 0)
-		return rval;
+		goto out;
 
 	/* Set up PLL */
 	rval = smiapp_pll_configure(sensor);