On Mon, 10 Jan 2005, Vladimir Trukhin wrote:

> Here is the debugging log of Windows XP session when the driver was 
> started without 'removable' option, i.e.:
> 
> # insmod g_file_storage.ko file=storage
> 
> Connection was never established.
> Due to restricted kernel buffer size I started dmesg command in pauses 
> between reset messages.
> 
> Also I added timestamp output in dump_msg() and do_set_config() 
> functions using do_gettimeofday() the way like that:
> 
> {
>     struct timeval tv;
> 
>     do_gettimeofday(&tv);
>     INFO(fsg, "%s speed config #%d (%d.%d)\n", speed, fsg->config,
>                tv.tv_sec, tv.tv_usec);
> }
> 
> ---------------------------------------------------------------------
> ****************************
> Started g_file_storage.ko
> ****************************
> ****************************
> # dmesg -c -s 500000
> ****************************

<...>

> g_file_storage gadget: bulk-out, length 31 (time: 251.511564 s):
>      0:  55 53 42 43 08 30 c3 81  fc 00 00 00 80 00 0a 23
>     10:  00 00 00 00 00 00 00 fc  00 00 00 00 00 00 00
> g_file_storage gadget: SCSI command: READ FORMAT CAPACITIES;  Dc=10, Di=252;  
> Hc=10, Hi=252
> g_file_storage gadget: bulk-in, length 0 (time: 251.511727 s):
> g_file_storage gadget: bulk-in set halt
> g_file_storage gadget: sending command-failure status
> g_file_storage gadget:   sense data: SK x06, ASC x29, ASCQ x00;  info x0
> g_file_storage gadget: bulk-in, length 13 (time: 251.512856 s):
>      0:  55 53 42 53 08 30 c3 81  fc 00 00 00 01

You skipped about 20 seconds here, from 251.51 to 271.50.  Did anything 
happen during that time?

> ****************************
> # dmesg -c -s 500000
> ****************************
>     
> g_file_storage gadget: bulk-out, length 0 (time: 271.509632 s):
> g_file_storage gadget: bulk_out_complete --> -108, 0/31
> g_file_storage gadget: disconnect or port reset

This is not what I got when connecting to a Windows XP system.  Here's the 
corresponding section from my log (it's almost a year old now!):

Jan 28 14:42:35 ida kernel: g_file_storage gadget: SCSI command: READ FORMAT 
CAPACITIES;  Dc=10, Di=252;  Hc=10, Hi=252
Jan 28 14:42:35 ida kernel: g_file_storage gadget: bulk-in, length 0:
Jan 28 14:42:35 ida kernel: g_file_storage gadget: bulk-in set halt
Jan 28 14:42:35 ida kernel: g_file_storage gadget: sending command-failure 
status
Jan 28 14:42:35 ida kernel: g_file_storage gadget:   sense data: SK x06, ASC 
x29, ASCQ x00;  info x0
Jan 28 14:42:35 ida kernel: g_file_storage gadget: bulk-in, length 13:
Jan 28 14:42:35 ida kernel:      0:  55 53 42 53 50 a1 b7 81  fc 00 00 00 01
Jan 28 14:42:35 ida kernel: g_file_storage gadget: bulk-out, length 31:
Jan 28 14:42:35 ida kernel:      0:  55 53 42 43 50 a1 b7 81  12 00 00 00 80 00 
0c 03
Jan 28 14:42:35 ida kernel:     10:  00 00 00 12 00 00 00 00  00 00 00 00 00 00 
00
Jan 28 14:42:35 ida kernel: g_file_storage gadget: SCSI command: REQUEST SENSE; 
 Dc=6, Di=18;  Hc=12, Hi=18
Jan 28 14:42:35 ida kernel: g_file_storage gadget: bulk-in, length 18:
Jan 28 14:42:35 ida kernel:      0:  f0 00 06 00 00 00 00 0b  00 00 00 00 29 00 
00 00
Jan 28 14:42:35 ida kernel:     10:  00 00
Jan 28 14:42:35 ida kernel: g_file_storage gadget: bulk-in, length 13:
Jan 28 14:42:35 ida kernel:      0:  55 53 42 53 50 a1 b7 81  00 00 00 00 00
Jan 28 14:42:35 ida kernel: g_file_storage gadget: bulk-out, length 31:
Jan 28 14:42:35 ida kernel:      0:  55 53 42 43 50 a1 b7 81  fc 00 00 00 80 00 
0a 23
Jan 28 14:42:35 ida kernel:     10:  00 00 00 00 00 00 00 fc  00 00 00 00 00 00 
00
Jan 28 14:42:35 ida kernel: g_file_storage gadget: SCSI command: READ FORMAT 
CAPACITIES;  Dc=10, Di=252;  Hc=10, Hi=252
Jan 28 14:42:35 ida kernel: g_file_storage gadget: bulk-in, length 12:
Jan 28 14:42:35 ida kernel:      0:  00 00 00 08 00 00 40 00  02 00 02 00
Jan 28 14:42:35 ida kernel: g_file_storage gadget: bulk-in set halt
Jan 28 14:42:35 ida kernel: g_file_storage gadget: bulk-in, length 13:
Jan 28 14:42:35 ida kernel:      0:  55 53 42 53 50 a1 b7 81  f0 00 00 00 00
Jan 28 14:42:35 ida kernel: g_file_storage gadget: bulk-out, length 31:
Jan 28 14:42:35 ida kernel:      0:  55 53 42 43 50 a1 b7 81  08 00 00 00 80 00 
0a 25
Jan 28 14:42:35 ida kernel:     10:  00 00 00 00 00 00 00 00  00 00 00 00 00 00 
00
Jan 28 14:42:35 ida kernel: g_file_storage gadget: SCSI command: READ CAPACITY; 
 Dc=10, Di=8;  Hc=10, Hi=8
Jan 28 14:42:35 ida kernel: g_file_storage gadget: bulk-in, length 8:
Jan 28 14:42:35 ida kernel:      0:  00 00 3f ff 00 00 02 00
Jan 28 14:42:35 ida kernel: g_file_storage gadget: bulk-in, length 13:
Jan 28 14:42:35 ida kernel:      0:  55 53 42 53 50 a1 b7 81  00 00 00 00 00
Jan 28 14:42:35 ida kernel: g_file_storage gadget: bulk-out, length 31:
Jan 28 14:42:35 ida kernel:      0:  55 53 42 43 50 a1 b7 81  00 02 00 00 80 00 
0a 28
Jan 28 14:42:35 ida kernel:     10:  00 00 00 00 00 00 00 01  00 00 00 00 00 00 
00

As you can see, after getting the ASC = 0x29 response to READ FORMAT
CAPACITIES, Windows did a REQUEST SENSE and then successfully retried the
READ FORMAT CAPACITIES.  I don't know why this didn't happen to you -- or 
maybe it did; it would be in the part of the log that you left out!

Alan Stern



-------------------------------------------------------
The SF.Net email is sponsored by: Beat the post-holiday blues
Get a FREE limited edition SourceForge.net t-shirt from ThinkGeek.
It's fun and FREE -- well, almost....http://www.thinkgeek.com/sfshirt
_______________________________________________
linux-usb-devel@lists.sourceforge.net
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to