In the Linux kernel, the following vulnerability has been resolved: can: gs_usb: gs_usb_receive_bulk_callback(): fix URB memory leak In gs_can_open(), the URBs for USB-in transfers are allocated, added to the parent->rx_submitted anchor and submitted. In the complete callback gs_usb_receive_bulk_callback(), the URB is processed and resubmitted. In gs_can_close() the URBs are freed by calling usb_kill_anchored_urbs(parent->rx_submitted). However, this does not take into account that the USB framework unanchors the URB before the complete function is called. This means that once an in-URB has been completed, it is no longer anchored and is ultimately not released in gs_can_close(). Fix the memory leak by anchoring the URB in the gs_usb_receive_bulk_callback() to the parent->rx_submitted anchor.
https://git.kernel.org/stable/c/f905bcfa971edb89e398c98957838d8c6381c0c7
https://git.kernel.org/stable/c/9f669a38ca70839229b7ba0f851820850a2fe1f7
https://git.kernel.org/stable/c/7352e1d5932a0e777e39fa4b619801191f57e603
https://git.kernel.org/stable/c/08624b7206ddb9148eeffc2384ebda2c47b6d1e9