mirror of https://gitee.com/openkylin/linux.git
[media] cx25821: fix error return code and clean up
The function cx25821_sram_channel_setup_upstream_audio always return zero, so the return value is not saved any more. 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@gmail.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
This commit is contained in:
parent
eaddb09307
commit
c81d497284
|
@ -700,7 +700,6 @@ static int cx25821_start_audio_dma_upstream(struct cx25821_dev *dev,
|
|||
int cx25821_audio_upstream_init(struct cx25821_dev *dev, int channel_select)
|
||||
{
|
||||
struct sram_channel *sram_ch;
|
||||
int retval = 0;
|
||||
int err = 0;
|
||||
int str_length = 0;
|
||||
|
||||
|
@ -735,8 +734,10 @@ int cx25821_audio_upstream_init(struct cx25821_dev *dev, int channel_select)
|
|||
dev->_audiofilename = kmemdup(dev->input_audiofilename,
|
||||
str_length + 1, GFP_KERNEL);
|
||||
|
||||
if (!dev->_audiofilename)
|
||||
if (!dev->_audiofilename) {
|
||||
err = -ENOMEM;
|
||||
goto error;
|
||||
}
|
||||
|
||||
/* Default if filename is empty string */
|
||||
if (strcmp(dev->input_audiofilename, "") == 0)
|
||||
|
@ -746,12 +747,14 @@ int cx25821_audio_upstream_init(struct cx25821_dev *dev, int channel_select)
|
|||
dev->_audiofilename = kmemdup(_defaultAudioName,
|
||||
str_length + 1, GFP_KERNEL);
|
||||
|
||||
if (!dev->_audiofilename)
|
||||
if (!dev->_audiofilename) {
|
||||
err = -ENOMEM;
|
||||
goto error;
|
||||
}
|
||||
}
|
||||
|
||||
retval = cx25821_sram_channel_setup_upstream_audio(dev, sram_ch,
|
||||
_line_size, 0);
|
||||
cx25821_sram_channel_setup_upstream_audio(dev, sram_ch,
|
||||
_line_size, 0);
|
||||
|
||||
dev->audio_upstream_riscbuf_size =
|
||||
AUDIO_RISC_DMA_BUF_SIZE * NUM_AUDIO_PROGS +
|
||||
|
@ -759,9 +762,9 @@ int cx25821_audio_upstream_init(struct cx25821_dev *dev, int channel_select)
|
|||
dev->audio_upstream_databuf_size = AUDIO_DATA_BUF_SZ * NUM_AUDIO_PROGS;
|
||||
|
||||
/* Allocating buffers and prepare RISC program */
|
||||
retval = cx25821_audio_upstream_buffer_prepare(dev, sram_ch,
|
||||
err = cx25821_audio_upstream_buffer_prepare(dev, sram_ch,
|
||||
_line_size);
|
||||
if (retval < 0) {
|
||||
if (err < 0) {
|
||||
pr_err("%s: Failed to set up Audio upstream buffers!\n",
|
||||
dev->name);
|
||||
goto error;
|
||||
|
|
Loading…
Reference in New Issue