kernel_samsung_a53x/drivers/usb
Xingxing Luo c2d4ef1b87 usb: musb: Get the musb_qh poniter after musb_giveback
commit 33d7e37232155aadebe4145dcc592f00dabd7a2b upstream.

When multiple threads are performing USB transmission, musb->lock will be
unlocked when musb_giveback is executed. At this time, qh may be released
in the dequeue process in other threads, resulting in a wild pointer, so
it needs to be here get qh again, and judge whether qh is NULL, and when
dequeue, you need to set qh to NULL.

Fixes: dbac5d07d13e ("usb: musb: host: don't start next rx urb if current one failed")
Cc: stable@vger.kernel.org
Signed-off-by: Xingxing Luo <xingxing.luo@unisoc.com>
Link: https://lore.kernel.org/r/20230919033055.14085-1-xingxing.luo@unisoc.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2024-11-08 11:25:49 +01:00
..
atm Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
c67x00 Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
cdns3 Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
chipidea Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
class Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
common Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
core drivers: usb: add toggle for disabling newly added USB devices 2024-10-04 20:09:29 -03:00
dwc2 Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
dwc3 Fix clang 16 errors treewide 2024-06-15 16:28:48 -03:00
early Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
gadget Fix clang 16 errors treewide 2024-06-15 16:28:48 -03:00
host usb: xhci: xhci-ring: Use sysdev for mapping bounce buffer 2024-11-08 11:25:47 +01:00
image Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
isp1760 Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
misc Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
mon Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
mtu3 Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
musb usb: musb: Get the musb_qh poniter after musb_giveback 2024-11-08 11:25:49 +01:00
notify Import A536BXXSAEXE1 2024-06-15 16:07:28 -03:00
notify_lsi Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
phy Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
renesas_usbhs Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
roles Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
serial Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
storage Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
typec Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
usbip Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
Kconfig Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
Kconfig.variant1 Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
Makefile Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
Makefile.variant1 Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00
usb-skeleton.c Import A536BXXU9EXDC 2024-06-15 16:02:09 -03:00