| From 7b69154171b407844c273ab4c10b5f0ddcd6aa29 Mon Sep 17 00:00:00 2001 |
| From: Takashi Iwai <tiwai@suse.de> |
| Date: Fri, 23 Nov 2018 18:16:33 +0100 |
| Subject: ALSA: wss: Fix invalid snd_free_pages() at error path |
| |
| From: Takashi Iwai <tiwai@suse.de> |
| |
| commit 7b69154171b407844c273ab4c10b5f0ddcd6aa29 upstream. |
| |
| Some spurious calls of snd_free_pages() have been overlooked and |
| remain in the error paths of wss 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> |
| |
| --- |
| sound/isa/wss/wss_lib.c | 2 -- |
| 1 file changed, 2 deletions(-) |
| |
| --- a/sound/isa/wss/wss_lib.c |
| +++ b/sound/isa/wss/wss_lib.c |
| @@ -1531,7 +1531,6 @@ static int snd_wss_playback_open(struct |
| if (err < 0) { |
| if (chip->release_dma) |
| chip->release_dma(chip, chip->dma_private_data, chip->dma1); |
| - snd_free_pages(runtime->dma_area, runtime->dma_bytes); |
| return err; |
| } |
| chip->playback_substream = substream; |
| @@ -1572,7 +1571,6 @@ static int snd_wss_capture_open(struct s |
| if (err < 0) { |
| if (chip->release_dma) |
| chip->release_dma(chip, chip->dma_private_data, chip->dma2); |
| - snd_free_pages(runtime->dma_area, runtime->dma_bytes); |
| return err; |
| } |
| chip->capture_substream = substream; |