When restore_dsp_rettings() fails, chip should be freed just like when init_hw() and request_irq() fails. Fixes: 47b5d028fdce8 ("ALSA: Echoaudio - Add suspend support #2") Signed-off-by: Dinghao Liu <dinghao.liu@xxxxxxxxxx> --- sound/pci/echoaudio/echoaudio.c | 1 + 1 file changed, 1 insertion(+) diff --git a/sound/pci/echoaudio/echoaudio.c b/sound/pci/echoaudio/echoaudio.c index 6aeb99aa2414..2aa183fe5dc1 100644 --- a/sound/pci/echoaudio/echoaudio.c +++ b/sound/pci/echoaudio/echoaudio.c @@ -2226,6 +2226,7 @@ static int snd_echo_resume(struct device *dev) chip->pipe_alloc_mask = pipe_alloc_mask; if (err < 0) { kfree(commpage_bak); + snd_echo_free(chip); return err; } -- 2.17.1