Re: [PATCH v6 0/4] usb: gadget: uvc: stability fixes on STREAMOFF.

From: Avichal Rakesh
Date: Thu Oct 19 2023 - 15:00:01 EST




On 10/19/23 11:53, Avichal Rakesh wrote:
> We have been seeing two main stability issues that uvc gadget driver
> runs into when stopping streams:
> 1. Attempting to queue usb_requests to a disabled usb_ep
> 2. use-after-free issue for inflight usb_requests
>
> The four patches below fix the two issues above. Patch 1/4 fixes the
> first issue, and Patch 2/4 and 4/4 fix the second issue. Patch 3/4
> is only there to make the diff in 4/4 cleaner.
>
> Avichal Rakesh (4):
> usb: gadget: uvc: prevent use of disabled endpoint
> usb: gadget: uvc: Allocate uvc_requests one at a time
> usb: gadget: uvc: move video disable logic to its own function
> usb: gadget: uvc: Fix use-after-free for inflight usb_requests
>
> drivers/usb/gadget/function/f_uvc.c | 11 +-
> drivers/usb/gadget/function/f_uvc.h | 2 +-
> drivers/usb/gadget/function/uvc.h | 6 +-
> drivers/usb/gadget/function/uvc_v4l2.c | 12 +-
> drivers/usb/gadget/function/uvc_video.c | 231 +++++++++++++++++-------
> 5 files changed, 189 insertions(+), 73 deletions(-)
>
> --
> 2.42.0.758.gaed0368e0e-goog

Dan and Laurent, please go over the patches whenever you get a
chance. I think they're ready to submit as neither Michael
nor I have seen any use-after-free issues after the patches.

Thank you!
- Avi.