diff options
author | Andrey Konovalov <andreyknvl@gmail.com> | 2016-02-13 11:08:06 +0300 |
---|---|---|
committer | Ziyan <jaraidaniel@gmail.com> | 2016-10-29 01:34:08 +0200 |
commit | d300936576ebfe6e234e7faa00fa4b48cfda7aba (patch) | |
tree | 32bb9f1a3a870e4c1fd33e34cad87632ac78b03e /sound | |
parent | 65d2f10c3d87971f68ca81edc23f86c57af8038e (diff) | |
download | kernel_samsung_tuna-d300936576ebfe6e234e7faa00fa4b48cfda7aba.zip kernel_samsung_tuna-d300936576ebfe6e234e7faa00fa4b48cfda7aba.tar.gz kernel_samsung_tuna-d300936576ebfe6e234e7faa00fa4b48cfda7aba.tar.bz2 |
ALSA: usb-audio: avoid freeing umidi object twice
The 'umidi' object will be free'd on the error path by snd_usbmidi_free()
when tearing down the rawmidi interface. So we shouldn't try to free it
in snd_usbmidi_create() after having registered the rawmidi interface.
Found by KASAN.
Change-Id: I8534867beeac111370017ef246adc17e23e1a3b1
Signed-off-by: Andrey Konovalov <andreyknvl@gmail.com>
Acked-by: Clemens Ladisch <clemens@ladisch.de>
Cc: <stable@vger.kernel.org>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound')
-rw-r--r-- | sound/usb/midi.c | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/sound/usb/midi.c b/sound/usb/midi.c index c635a2d..9e864e9 100644 --- a/sound/usb/midi.c +++ b/sound/usb/midi.c @@ -2213,7 +2213,6 @@ int snd_usbmidi_create(struct snd_card *card, else err = snd_usbmidi_create_endpoints(umidi, endpoints); if (err < 0) { - snd_usbmidi_free(umidi); return err; } |