summaryrefslogtreecommitdiffstats
path: root/sound
diff options
context:
space:
mode:
authorTakashi Sakamoto <o-takashi@sakamocchi.jp>2018-09-13 21:31:05 +0900
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2018-09-29 03:07:31 -0700
commit454fd956d061547dd67f67d0c3514608542b2661 (patch)
tree5bbd38a107414adb694507d0eacddc04d251b1e5 /sound
parenteffd213a430308fb479d6c1cae95fa861dd8c50f (diff)
downloadlinux-stable-454fd956d061547dd67f67d0c3514608542b2661.tar.gz
linux-stable-454fd956d061547dd67f67d0c3514608542b2661.tar.bz2
linux-stable-454fd956d061547dd67f67d0c3514608542b2661.zip
ALSA: firewire-tascam: fix memory leak of private data
commit 8d28277c065a974873c6781d44b7bcdcd8fb4e8a upstream. Although private data of sound card instance is usually allocated in the tail of the instance, drivers in ALSA firewire stack allocate the private data before allocating the instance. In this case, the private data should be released explicitly at .private_free callback of the instance. This commit fixes memory leak following to the above design. Fixes: b610386c8afb ('ALSA: firewire-tascam: deleyed registration of sound card') Cc: <stable@vger.kernel.org> # v4.7+ Signed-off-by: Takashi Sakamoto <o-takashi@sakamocchi.jp> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'sound')
-rw-r--r--sound/firewire/tascam/tascam.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/sound/firewire/tascam/tascam.c b/sound/firewire/tascam/tascam.c
index 9dc93a7eb9da..4c967ac1c0e8 100644
--- a/sound/firewire/tascam/tascam.c
+++ b/sound/firewire/tascam/tascam.c
@@ -93,6 +93,7 @@ static void tscm_free(struct snd_tscm *tscm)
fw_unit_put(tscm->unit);
mutex_destroy(&tscm->mutex);
+ kfree(tscm);
}
static void tscm_card_free(struct snd_card *card)