summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTakashi Sakamoto <o-takashi@sakamocchi.jp>2018-09-13 21:31:05 +0900
committerTakashi Iwai <tiwai@suse.de>2018-09-13 15:14:39 +0200
commit8d28277c065a974873c6781d44b7bcdcd8fb4e8a (patch)
tree736ebc348191c60f05aa822bd352fcad2d68ab05
parenta49a83ab05e34edd6c71a4fbd062c9a7ba6d18aa (diff)
downloadlinux-8d28277c065a974873c6781d44b7bcdcd8fb4e8a.tar.gz
linux-8d28277c065a974873c6781d44b7bcdcd8fb4e8a.tar.bz2
linux-8d28277c065a974873c6781d44b7bcdcd8fb4e8a.zip
ALSA: firewire-tascam: fix memory leak of private data
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>
-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 44ad41fb7374..d3fdc463a884 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)