mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2025-01-16 10:17:32 +00:00
ALSA: sparc: Fix invalid snd_free_pages() at error path
commit 9a20332ab373b1f8f947e0a9c923652b32dab031 upstream. Some spurious calls of snd_free_pages() have been overlooked and remain in the error paths of sparc cs4231 driver code. Since runtime->dma_area is managed by the PCM core helper, we shouldn't release manually. Drop the superfluous calls. Reviewed-by: Takashi Sakamoto <o-takashi@sakamocchi.jp> Cc: <stable@vger.kernel.org> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
73ce314c17
commit
46663071ad
@ -1146,10 +1146,8 @@ static int snd_cs4231_playback_open(struct snd_pcm_substream *substream)
|
||||
runtime->hw = snd_cs4231_playback;
|
||||
|
||||
err = snd_cs4231_open(chip, CS4231_MODE_PLAY);
|
||||
if (err < 0) {
|
||||
snd_free_pages(runtime->dma_area, runtime->dma_bytes);
|
||||
if (err < 0)
|
||||
return err;
|
||||
}
|
||||
chip->playback_substream = substream;
|
||||
chip->p_periods_sent = 0;
|
||||
snd_pcm_set_sync(substream);
|
||||
@ -1167,10 +1165,8 @@ static int snd_cs4231_capture_open(struct snd_pcm_substream *substream)
|
||||
runtime->hw = snd_cs4231_capture;
|
||||
|
||||
err = snd_cs4231_open(chip, CS4231_MODE_RECORD);
|
||||
if (err < 0) {
|
||||
snd_free_pages(runtime->dma_area, runtime->dma_bytes);
|
||||
if (err < 0)
|
||||
return err;
|
||||
}
|
||||
chip->capture_substream = substream;
|
||||
chip->c_periods_sent = 0;
|
||||
snd_pcm_set_sync(substream);
|
||||
|
Loading…
x
Reference in New Issue
Block a user