Re: USB g_mass_storage weirdness

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

Felipe Balbi <felipe.balbi@xxxxxxxxxxxxxxx> writes:
>>  irq/17-dwc3-1253  [000] d..1   315.944886: usb_gadget_vbus_draw: speed 5/5 state 7 0mA [sg:out_aligned:self-powered:activated:connected] --> -95
>> file-storage-1252  [003] ...1   315.945556: usb_ep_fifo_flush: ep1in: mps 1024/1024 streams 15 mult 0 burst 16 addr 81 released:enabled --> 1
>> file-storage-1252  [003] ...1   315.945561: usb_ep_fifo_flush: ep1out: mps 1024/1024 streams 15 mult 0 burst 16 addr 01 released:enabled --> 1
>
> after 20 seconds of nothing, host just gives up. For some reason,
> g_mass_storage didn't start queueing transfers. Any idea off the top of
> your heads? The remaining is just the gadget processing USB Reset.
>
> I can gather more data if you want. Just tell me what you need.

I've sprinkled a few trace_printk() around in g_mass_storage and got
some extra info. So here's a good transfer:

>  irq/17-dwc3-1336  [000] d...   839.818412: fsg_common_set_inquiry_string: ep1out: 31/1024 --> 0
> file-storage-1335  [003] ....   839.818415: fsg_common_put: SYNCHRONIZE_CACHE
>  irq/17-dwc3-1336  [000] d...   839.818472: fsg_common_set_inquiry_string: ep1in: 13/13 --> 0
>  irq/17-dwc3-1336  [000] d...   839.818574: fsg_common_set_inquiry_string: ep1out: 31/1024 --> 0
> file-storage-1335  [003] ....   839.818578: fsg_common_put: READ_10
>  irq/17-dwc3-1336  [000] d...   839.818665: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.818758: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.818761: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.818856: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.818859: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.818955: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.818959: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.819042: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.819046: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.819128: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.819133: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.819226: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.819230: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.819320: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.819325: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.819412: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.819417: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.819505: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.819509: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.819597: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.819603: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.819689: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.819692: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.819779: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.819783: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.819873: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.819877: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.819964: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.819968: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.820063: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.820067: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.820154: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.820158: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.820245: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.820248: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.820338: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.820341: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.820434: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.820438: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.820530: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.820534: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.820613: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.820617: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.820707: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.820711: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.820801: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.820804: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.820865: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.820942: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.820946: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.821026: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.821087: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.821091: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.821172: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.821176: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.821271: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.821275: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.821369: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.821372: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.821465: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.821469: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.821539: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.821615: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.821620: fsg_common_set_inquiry_string: ep1in: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.821682: fsg_common_set_inquiry_string: ep1in: 13/13 --> 0

And here's the bad case (with the last working WRITE_10):

>  irq/17-dwc3-1336  [000] d...   839.825613: fsg_common_set_inquiry_string: ep1out: 31/1024 --> 0

We get CBW and wakeup our mass storage kthread...

> file-storage-1335  [002] ....   839.825621: fsg_common_put: WRITE_10

... which parses it and starts all the transfers below

>  irq/17-dwc3-1336  [000] d...   839.825708: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.825783: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.825792: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.825863: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.825871: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.825939: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.825946: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.825952: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.826023: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.826030: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.826095: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.826102: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.826165: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.826170: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.826231: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.826235: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.826300: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.826304: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.826368: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.826372: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.826440: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.826444: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.826509: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.826513: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.826578: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.826583: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.826648: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.826652: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.826717: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.826721: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.826787: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.826791: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.826859: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.826863: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.826929: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.826932: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.827027: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.827032: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.827097: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.827102: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.827106: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.827174: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.827178: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.827243: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.827248: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.827313: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.827317: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.827382: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.827387: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.827453: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.827457: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.827521: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.827526: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.827590: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.827593: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.827659: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.827663: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.827729: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.827733: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.827799: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.827803: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.827869: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.827873: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0
>  irq/17-dwc3-1336  [000] d...   839.827938: fsg_common_set_inquiry_string: ep1out: 16384/16384 --> 0

total of 1MiB transferred

>  irq/17-dwc3-1336  [000] d...   839.828020: fsg_common_set_inquiry_string: ep1in: 13/13 --> 0

Our CSW completes fine

>  irq/17-dwc3-1336  [000] d...   839.828022: fsg_common_set_inquiry_string: ep1out: 31/1024 --> 0

2 us later, we receive another CBW, but the thread doesn't run. Any ideas?

>  irq/17-dwc3-1336  [000] d...   901.049297: fsg_common_set_inquiry_string: ep1out: 31/1024 --> 0


-- 
balbi

Attachment: signature.asc
Description: PGP signature


[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux