>> 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

Reply via email to