ALSA: firewire-motu: destroy stream data surely at failure of card initialization
authorTakashi Sakamoto <o-takashi@sakamocchi.jp>
Sun, 20 Aug 2017 06:55:02 +0000 (15:55 +0900)
committerTakashi Iwai <tiwai@suse.de>
Sun, 20 Aug 2017 07:40:45 +0000 (09:40 +0200)
When failing sound card registration after initializing stream data, this
module leaves allocated data in stream data. This commit fixes the bug.

Fixes: 9b2bb4f2f4a2 ('ALSA: firewire-motu: add stream management functionality')
Cc: <stable@vger.kernel.org> # v4.12+
Signed-off-by: Takashi Sakamoto <o-takashi@sakamocchi.jp>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/firewire/motu/motu.c

index bf779cfeef0dfaea62ea5684997314a9fe02d4c0..59a270406353d71563f2473ff1675116729acda9 100644 (file)
@@ -128,6 +128,7 @@ static void do_registration(struct work_struct *work)
        return;
 error:
        snd_motu_transaction_unregister(motu);
+       snd_motu_stream_destroy_duplex(motu);
        snd_card_free(motu->card);
        dev_info(&motu->unit->device,
                 "Sound card registration failed: %d\n", err);