Message ID | 05c137e8-e417-162b-c588-f5fc22be5ed6@users.sourceforge.net (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Aug 23 2017 21:54, SF Markus Elfring wrote: > From: Markus Elfring <elfring@users.sourceforge.net> > Date: Wed, 23 Aug 2017 14:45:20 +0200 > > Add a jump target so that a bit of exception handling can be better reused > at the end of this function. > > This issue was detected by using the Coccinelle software. > > Signed-off-by: Markus Elfring <elfring@users.sourceforge.net> > --- > > v2: > It seems that a source code adjustment was requested by Takashi Sakamoto > for another if branch. > > sound/firewire/fireface/ff-pcm.c | 20 ++++++++++---------- > 1 file changed, 10 insertions(+), 10 deletions(-) Reviewed-by: Takashi Sakamoto <o-takashi@sakamocchi.jp> > diff --git a/sound/firewire/fireface/ff-pcm.c b/sound/firewire/fireface/ff-pcm.c > index d12a0e3a4219..e3c16308363d 100644 > --- a/sound/firewire/fireface/ff-pcm.c > +++ b/sound/firewire/fireface/ff-pcm.c > @@ -138,16 +138,12 @@ static int pcm_open(struct snd_pcm_substream *substream) > return err; > > err = pcm_init_hw_params(ff, substream); > - if (err < 0) { > - snd_ff_stream_lock_release(ff); > - return err; > - } > + if (err < 0) > + goto release_lock; > > err = ff->spec->protocol->get_clock(ff, &rate, &src); > - if (err < 0) { > - snd_ff_stream_lock_release(ff); > - return err; > - } > + if (err < 0) > + goto release_lock; > > if (src != SND_FF_CLOCK_SRC_INTERNAL) { > for (i = 0; i < CIP_SFC_COUNT; ++i) { > @@ -159,8 +155,8 @@ static int pcm_open(struct snd_pcm_substream *substream) > * streaming engine can't support. > */ > if (i >= CIP_SFC_COUNT) { > - snd_ff_stream_lock_release(ff); > - return -EIO; > + err = -EIO; > + goto release_lock; > } > > substream->runtime->hw.rate_min = rate; > @@ -177,6 +173,10 @@ static int pcm_open(struct snd_pcm_substream *substream) > snd_pcm_set_sync(substream); > > return 0; > + > +release_lock: > + snd_ff_stream_lock_release(ff); > + return err; > } > > static int pcm_close(struct snd_pcm_substream *substream) Thanks Takashi Sakamoto
On Wed, 23 Aug 2017 14:54:32 +0200, SF Markus Elfring wrote: > > From: Markus Elfring <elfring@users.sourceforge.net> > Date: Wed, 23 Aug 2017 14:45:20 +0200 > > Add a jump target so that a bit of exception handling can be better reused > at the end of this function. > > This issue was detected by using the Coccinelle software. > > Signed-off-by: Markus Elfring <elfring@users.sourceforge.net> > --- > > v2: > It seems that a source code adjustment was requested by Takashi Sakamoto > for another if branch. Applied, thanks. Takashi
diff --git a/sound/firewire/fireface/ff-pcm.c b/sound/firewire/fireface/ff-pcm.c index d12a0e3a4219..e3c16308363d 100644 --- a/sound/firewire/fireface/ff-pcm.c +++ b/sound/firewire/fireface/ff-pcm.c @@ -138,16 +138,12 @@ static int pcm_open(struct snd_pcm_substream *substream) return err; err = pcm_init_hw_params(ff, substream); - if (err < 0) { - snd_ff_stream_lock_release(ff); - return err; - } + if (err < 0) + goto release_lock; err = ff->spec->protocol->get_clock(ff, &rate, &src); - if (err < 0) { - snd_ff_stream_lock_release(ff); - return err; - } + if (err < 0) + goto release_lock; if (src != SND_FF_CLOCK_SRC_INTERNAL) { for (i = 0; i < CIP_SFC_COUNT; ++i) { @@ -159,8 +155,8 @@ static int pcm_open(struct snd_pcm_substream *substream) * streaming engine can't support. */ if (i >= CIP_SFC_COUNT) { - snd_ff_stream_lock_release(ff); - return -EIO; + err = -EIO; + goto release_lock; } substream->runtime->hw.rate_min = rate; @@ -177,6 +173,10 @@ static int pcm_open(struct snd_pcm_substream *substream) snd_pcm_set_sync(substream); return 0; + +release_lock: + snd_ff_stream_lock_release(ff); + return err; } static int pcm_close(struct snd_pcm_substream *substream)