Hi Benoit, thank you for the patch. On Fri, Sep 27, 2019 at 7:46 PM Benoit Parrot <bparrot@xxxxxx> wrote: > > In ov2659_s_stream() return value for invoked function should be checked > and propagated. > > Signed-off-by: Benoit Parrot <bparrot@xxxxxx> > --- > drivers/media/i2c/ov2659.c | 11 +++++++---- > 1 file changed, 7 insertions(+), 4 deletions(-) > > diff --git a/drivers/media/i2c/ov2659.c b/drivers/media/i2c/ov2659.c > index f77320e8a60d..cd4625432264 100644 > --- a/drivers/media/i2c/ov2659.c > +++ b/drivers/media/i2c/ov2659.c > @@ -1187,10 +1187,13 @@ static int ov2659_s_stream(struct v4l2_subdev *sd, int on) > goto unlock; > } > > - ov2659_set_pixel_clock(ov2659); > - ov2659_set_frame_size(ov2659); > - ov2659_set_format(ov2659); > - ov2659_set_streaming(ov2659, 1); > + ret = ov2659_set_pixel_clock(ov2659); > + if (!ret) > + ret = ov2659_set_frame_size(ov2659); > + if (!ret) > + ret = ov2659_set_format(ov2659); > + if (!ret) > + ov2659_set_streaming(ov2659, 1); > ov2659->streaming = on; > the "ov2659->streaming = on;" should only be set if above calls succeed, otherwise we might hit -EBUSY during set_fmt. Cheers, --Prabhakar Lad > unlock: > -- > 2.17.1 >