original_kernel/sound/usb/usx2y
Wenwen Wang cbb88db76a ALSA: usx2y: fix a double free bug
In usX2Y_In04_init(), a new urb is firstly created through usb_alloc_urb()
and saved to 'usX2Y->In04urb'. Then, a buffer is allocated through
kmalloc() and saved to 'usX2Y->In04Buf'. If the allocation of the buffer
fails, the error code ENOMEM is returned after usb_free_urb(), which frees
the created urb. However, the urb is actually freed at card->private_free
callback, i.e., snd_usX2Y_card_private_free(). So the free operation here
leads to a double free bug.

To fix the above issue, simply remove usb_free_urb().

Signed-off-by: Wenwen Wang <wang6495@umn.edu>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2019-04-29 19:56:41 +02:00
..
Makefile
us122l.c
us122l.h
usX2Yhwdep.c ALSA: Replace snd_malloc_pages() and snd_free_pages() with standard helpers, take#2 2019-03-27 17:15:01 +01:00
usX2Yhwdep.h
usb_stream.c ALSA: us122l: Use alloc_pages_exact() 2019-03-27 17:15:04 +01:00
usb_stream.h
usbus428ctldefs.h
usbusx2y.c ALSA: usx2y: fix a double free bug 2019-04-29 19:56:41 +02:00
usbusx2y.h
usbusx2yaudio.c
usx2y.h
usx2yhwdeppcm.c ALSA: Replace snd_malloc_pages() and snd_free_pages() with standard helpers, take#2 2019-03-27 17:15:01 +01:00
usx2yhwdeppcm.h