looks ok to me, note: i do not have the hardware Reviewed-by: walter harms <wharms@xxxxxx> Am 08.09.2012 16:01, schrieb Peter Senna Tschudin: > From: Peter Senna Tschudin <peter.senna@xxxxxxxxx> > > Convert a nonnegative error return code to a negative one, as returned > elsewhere in the function. > > A simplified version of the semantic match that finds this problem is as > follows: (http://coccinelle.lip6.fr/) > > // <smpl> > ( > if@p1 (\(ret < 0\|ret != 0\)) > { ... return ret; } > | > ret@p1 = 0 > ) > ... when != ret = e1 > when != &ret > *if(...) > { > ... when != ret = e2 > when forall > return ret; > } > > // </smpl> > > Signed-off-by: Peter Senna Tschudin <peter.senna@xxxxxxxxx> > > --- > walter harms <wharms@xxxxxx>, thanks for the tip. Please take a look carefully to check if I got your suggestion correctly. It was tested by compilation only. > > drivers/media/pci/cx25821/cx25821-video-upstream-ch2.c | 30 ++++++----------- > 1 file changed, 12 insertions(+), 18 deletions(-) > > diff --git a/drivers/media/pci/cx25821/cx25821-video-upstream-ch2.c b/drivers/media/pci/cx25821/cx25821-video-upstream-ch2.c > index c8c94fb..b663dac 100644 > --- a/drivers/media/pci/cx25821/cx25821-video-upstream-ch2.c > +++ b/drivers/media/pci/cx25821/cx25821-video-upstream-ch2.c > @@ -704,11 +704,9 @@ int cx25821_vidupstream_init_ch2(struct cx25821_dev *dev, int channel_select, > { > struct sram_channel *sram_ch; > u32 tmp; > - int retval = 0; > int err = 0; > int data_frame_size = 0; > int risc_buffer_size = 0; > - int str_length = 0; > > if (dev->_is_running_ch2) { > pr_info("Video Channel is still running so return!\n"); > @@ -744,20 +742,16 @@ int cx25821_vidupstream_init_ch2(struct cx25821_dev *dev, int channel_select, > risc_buffer_size = dev->_isNTSC_ch2 ? > NTSC_RISC_BUF_SIZE : PAL_RISC_BUF_SIZE; > > - if (dev->input_filename_ch2) { > - str_length = strlen(dev->input_filename_ch2); > - dev->_filename_ch2 = kmemdup(dev->input_filename_ch2, > - str_length + 1, GFP_KERNEL); > - > - if (!dev->_filename_ch2) > - goto error; > - } else { > - str_length = strlen(dev->_defaultname_ch2); > - dev->_filename_ch2 = kmemdup(dev->_defaultname_ch2, > - str_length + 1, GFP_KERNEL); > + if (dev->input_filename_ch2) > + dev->_filename_ch2 = kstrdup(dev->input_filename_ch2, > + GFP_KERNEL); > + else > + dev->_filename_ch2 = kstrdup(dev->_defaultname_ch2, > + GFP_KERNEL); > > - if (!dev->_filename_ch2) > - goto error; > + if (!dev->_filename_ch2) { > + err = -ENOENT; > + goto error; > } > > /* Default if filename is empty string */ > @@ -773,7 +767,7 @@ int cx25821_vidupstream_init_ch2(struct cx25821_dev *dev, int channel_select, > } > } > > - retval = cx25821_sram_channel_setup_upstream(dev, sram_ch, > + err = cx25821_sram_channel_setup_upstream(dev, sram_ch, > dev->_line_size_ch2, 0); > > /* setup fifo + format */ > @@ -783,9 +777,9 @@ int cx25821_vidupstream_init_ch2(struct cx25821_dev *dev, int channel_select, > dev->upstream_databuf_size_ch2 = data_frame_size * 2; > > /* Allocating buffers and prepare RISC program */ > - retval = cx25821_upstream_buffer_prepare_ch2(dev, sram_ch, > + err = cx25821_upstream_buffer_prepare_ch2(dev, sram_ch, > dev->_line_size_ch2); > - if (retval < 0) { > + if (err < 0) { > pr_err("%s: Failed to set up Video upstream buffers!\n", > dev->name); > goto error; > > > -- To unsubscribe from this list: send the line "unsubscribe kernel-janitors" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html