summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPavankumar Kondeti <quic_pkondeti@quicinc.com>2022-01-22 08:33:22 +0530
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2022-02-08 18:15:27 +0100
commit41579b9e73773dc9157df13494c9916c30fe5e09 (patch)
tree4748d25ae8e8b3f8195b7e3e3b76bd935df0bca3
parent291038f7e8da64a6ca64f253f66dcf9ca6e870e1 (diff)
downloadlinux-stable-41579b9e73773dc9157df13494c9916c30fe5e09.tar.gz
linux-stable-41579b9e73773dc9157df13494c9916c30fe5e09.tar.bz2
linux-stable-41579b9e73773dc9157df13494c9916c30fe5e09.zip
usb: gadget: f_sourcesink: Fix isoc transfer for USB_SPEED_SUPER_PLUS
commit 904edf8aeb459697129be5fde847e2a502f41fd9 upstream. Currently when gadget enumerates in super speed plus, the isoc endpoint request buffer size is not calculated correctly. Fix this by checking the gadget speed against USB_SPEED_SUPER_PLUS and update the request buffer size. Fixes: 90c4d05780d4 ("usb: fix various gadgets null ptr deref on 10gbps cabling.") Cc: stable <stable@vger.kernel.org> Signed-off-by: Pavankumar Kondeti <quic_pkondeti@quicinc.com> Link: https://lore.kernel.org/r/1642820602-20619-1-git-send-email-quic_pkondeti@quicinc.com Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--drivers/usb/gadget/function/f_sourcesink.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/usb/gadget/function/f_sourcesink.c b/drivers/usb/gadget/function/f_sourcesink.c
index 1c5745f7abea..16142c321df8 100644
--- a/drivers/usb/gadget/function/f_sourcesink.c
+++ b/drivers/usb/gadget/function/f_sourcesink.c
@@ -587,6 +587,7 @@ static int source_sink_start_ep(struct f_sourcesink *ss, bool is_in,
if (is_iso) {
switch (speed) {
+ case USB_SPEED_SUPER_PLUS:
case USB_SPEED_SUPER:
size = ss->isoc_maxpacket *
(ss->isoc_mult + 1) *