]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
ALSA: usb-audio: Cap the packet size pre-calculations
authorTakashi Iwai <tiwai@suse.de>
Wed, 25 Feb 2026 08:52:28 +0000 (09:52 +0100)
committerTakashi Iwai <tiwai@suse.de>
Wed, 25 Feb 2026 09:17:27 +0000 (10:17 +0100)
commit7fe8dec3f628e9779f1631576f8e693370050348
treef1afcdf3f776f76d098e8c1c65eef83a0b262f9b
parent0d58273be0b9c3cec3be5488ca37f6ddbaf13cf0
ALSA: usb-audio: Cap the packet size pre-calculations

We calculate the possible packet sizes beforehand for adaptive and
synchronous endpoints, but we didn't take care of the max frame size
for those pre-calculated values.  When a device or a bus limits the
packet size, a high sample rate or a high number of channels may lead
to the packet sizes that are larger than the given limit, which
results in an error from the USB core at submitting URBs.

As a simple workaround, just add the sanity checks of pre-calculated
packet sizes to have the upper boundary of ep->maxframesize.

Fixes: f0bd62b64016 ("ALSA: usb-audio: Improve frames size computation")
Link: https://bugzilla.kernel.org/show_bug.cgi?id=221076
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Link: https://patch.msgid.link/20260225085233.316306-2-tiwai@suse.de
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/usb/endpoint.c