diff options
| author | Takashi Iwai <tiwai@suse.de> | 2026-09-03 18:04:37 +0200 |
|---|---|---|
| committer | Takashi Iwai <tiwai@suse.de> | 2026-09-06 10:01:42 +0200 |
| commit | 07b01b0d8ac4b5f89cbe74e52376221f21db260d (patch) | |
| tree | aa09c0eda69b10b3ae0a1387ba1cd813da3ee6fa /scripts/Makefile.thinlto | |
| parent | 402a9d6aab7ac787ab075adeb562c3db8b8f564b (diff) | |
| download | linux-07b01b0d8ac4b5f89cbe74e52376221f21db260d.tar.gz linux-07b01b0d8ac4b5f89cbe74e52376221f21db260d.zip | |
ALSA: usb: ua101: Avoid embedded URBs
UA101 driver uses URBs embedded in struct ua101, and this is basically
a buggy implementation nowadays; since a URB is managed with a
refcount, this may lead to a UAF when the URB is released
asynchronously.
For addressing the problem, this patch converts the embedded URBs to
ones that are properly allocated via usb_alloc_urb(). The
iso_frame_desc[] is gone, as it's allocated together by
usb_alloc_urb().
Along with the dynamic allocation of each URB, the ua101.urbs[]
becomes a static array of struct ua101_urb, and struct ua101_urb
contains the pointer to struct ua101. Those are needed to handle the
ready_list linked list in the complete callback.
No functional changes, only compile-tested.
Link: https://lore.kernel.org/20260903130757.0668310a.michal.pecio@gmail.com
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Link: https://patch.msgid.link/20260903160458.1938392-2-tiwai@suse.de
Diffstat (limited to 'scripts/Makefile.thinlto')
0 files changed, 0 insertions, 0 deletions
