RE: [REGRESSION] usb: gadget: f_fs: Allow scatter-gather buffers

From: Yang, Fei
Date: Mon May 20 2019 - 12:25:57 EST


>> One question that comes to my mind is this: Does the USB transmission
>> stall (e.g. endpoint stall) or not? In other words, is adb connection
>> broken because USB stops transmitting anything, or because the data is
>> transmitted but its integrity is broken during transmission and that
>> causes adb/adbd confusion which results in stopping their operation?
>> Does anything keep happening on FunctionFS when adb connection is
>> broken?
>
>Any discoveries about the problem?

In my debugging, I'm seeing a lot of requests queued up through ffs_epfile_io (returning -EIOCBQUEUED), but
only a few of them came back through ffs_epfile_async_io_complete -> ffs_user_copy_worker.
I donât think there is a USB transmission stall though, because if I manually disable io_data->use_sg, everything
goes back to normal. So it looks more likely to be a buffer handling problem in the DWC3 driver.

-Fei

>
>Andrzej