[Bug 202022] slow (780KB/s) USB2.0 + VT82xxxx + yenta (cardbus pcmcia)

bugzilla at redhat.com bugzilla at redhat.com
Sat Apr 5 17:43:09 UTC 2008


Please do not reply directly to this email. All additional
comments should be made in the comments box of this bug report.

Summary: slow (780KB/s) USB2.0 + VT82xxxx + yenta (cardbus pcmcia)


https://bugzilla.redhat.com/show_bug.cgi?id=202022





------- Additional Comments From jreiser at bitwagon.com  2008-04-05 13:43 EST -------
(In reply to comment #16)

> Knowing what happens to controller schedules requires
> special instrumentation (e.g. someone has to write that for this bug).

Where should I start (which particular source files), and what is the name of
the timestamp variable or subroutine?

> It's still worth to vary the block size and attach a couple of usbmon
> traces to the bug. Maybe something obvious pops up when I see them.

max_hw_sectors_kb was 120 (not 128) and was read-only.
max_sectors_kb was 120 and could be written.  So I experimented using
"echo 64 > max_sectors_kb" etc.  I'll attach compressed usbmon traces shortly.
In general the speed increased to a maximum of 1.1MB/s at 8==max_sectors_kb, and
could not be set below 4==max_sectors_kb.
-----
$ dd if=320mb bs=32k count=100 of=/dev/null
100+0 records in
100+0 records out
3276800 bytes (3.3 MB) copied, 5.32992 s, 615 kB/s   ## 120==max_sectors_kb

$ dd if=320mb bs=32k count=100 of=/dev/null skip=100
100+0 records in
100+0 records out
3276800 bytes (3.3 MB) copied, 4.76116 s, 688 kB/s   ## 64==max_sectors_kb

$ dd if=320mb bs=32k count=100 of=/dev/null skip=200
100+0 records in
100+0 records out
3276800 bytes (3.3 MB) copied, 4.32364 s, 758 kB/s   ## 32==max_sectors_kb

$ dd if=320mb bs=32k count=100 of=/dev/null skip=30
100+0 records in
100+0 records out
3276800 bytes (3.3 MB) copied, 3.5734 s, 917 kB/s   ## 16==max_sectors_kb

$ dd if=320mb bs=32k count=100 of=/dev/null skip=400
100+0 records in
100+0 records out
3276800 bytes (3.3 MB) copied, 2.99369 s, 1.1 MB/s   ## 8==max_sectors_kb

$ dd if=320mb bs=32k count=100 of=/dev/null skip=500
100+0 records in
100+0 records out
3276800 bytes (3.3 MB) copied, 3.20851 s, 1.0 MB/s   ## 4==max_sectors_kb
$ 
-----

The mount of debugfs succeeded, but the modprobe of usbmon failed for
2.6.24.4-64.fc8.  There was no 'usbmon' neither in the output of lsmod, nor any
'usbmon*' driver below /lib/modules/2.6.24.4-64.fc8.  However, the "ls
/sys/kernel/debug/usbmon" gave the list "0s 0t 0u 1s ...", so I'll assume that
is OK.

The /proc/bus/usb/devices entry is:
-----
T:  Bus=01 Lev=01 Prnt=01 Port=01 Cnt=01 Dev#=  2 Spd=480 MxCh= 0
D:  Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs=  1
P:  Vendor=03f0 ProdID=2107 Rev= 1.00
S:  Manufacturer=HP v120w
S:  Product=HP v120w
S:  SerialNumber=73b4fa94d7b174
C:* #Ifs= 1 Cfg#= 1 Atr=80 MxPwr= 80mA
I:* If#= 0 Alt= 0 #EPs= 3 Cls=08(stor.) Sub=06 Prot=50 Driver=usb-storage
E:  Ad=01(O) Atr=02(Bulk) MxPS= 512 Ivl=125us
E:  Ad=82(I) Atr=02(Bulk) MxPS= 512 Ivl=0ms
E:  Ad=83(I) Atr=03(Int.) MxPS=  64 Ivl=16ms
-----


-- 
Configure bugmail: https://bugzilla.redhat.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.




More information about the fedora-triage-list mailing list