Hello,

On my desktop (UHCI USB controller, VIA chipset) I get terrible transfer
speeds with a specific device (USB 1.x). The device, a Neuros with 128 MB
flash storage, works fine on my laptop (OHCI USB, NEC controller) on a 2.6
kernel. It also works fine on the desktop when I boot off of a 2.4.21-based
Gentoo livecd.

The 2.6 slowness has been on a number of kernels, I noticed it when I first
got the device around 2.6.3-rc?, and has sustained through various vanilla
and mm kernels up to 2.6.5-rc2-mm3.

To sum up what I'm working with:
Compaq laptop, OHCI, hotplug + udev, 2.6 device is fine
AMD+VIA-based desktop, UHCI, hotplug + udev, 2.6 device is very slow
AMD+VIA-based desktop, UHCI, hotplug + devfs, 2.4 livecd device is fine

Now for the actual problem:
I plug in the device and mount, that's fine. I copy a file (in this case
it's ~896,000 bytes) which "finishes" immediately (not mounted with sync).
Then I umount and it takes forever. The umount in this case took give or
take 1.5 hours to finish (it finished while I was eating dinner, but at
least an hour).

During the transfer USB debug tells me there are a bunch of bus resets and
command aborts, as

usb-storage: -- transfer complete
usb-storage: Bulk command transfer result=0
usb-storage: Attempting to get CSW...
usb-storage: usb_stor_bulk_transfer_buf: xfer 13 bytes
usb-storage: command_abort called
usb-storage: usb_stor_stop_transport called
usb-storage: -- cancelling URB
usb-storage: Status code -104; transferred 0/13
usb-storage: -- transfer cancelled
usb-storage: Bulk status result = 4
usb-storage: -- command was aborted
usb-storage: usb_stor_Bulk_reset called
usb-storage: usb_stor_control_msg: rq=ff rqtype=21 value=0000 index=00 len=0
usb-storage: Soft reset failed: -32
usb-storage: scsi command aborted
usb-storage: *** thread sleeping.
usb-storage: device_reset called
usb-storage: usb_stor_Bulk_reset called
usb-storage: usb_stor_control_msg: rq=ff rqtype=21 value=0000 index=00 len=0
usb-storage: Soft reset failed: -32

after a while (USB debug or not) I also get the following SCSI noise:

SCSI error : <1 0 0 0> return code = 0x6000000
end_request: I/O error, dev sdb, sector 1952
Buffer I/O error on device sdb1, logical block 1920
lost page write due to I/O error on sdb1

although the above usb-storage errors occur well before the SCSI stuff (the
SCSI errors, once they start, continue at a fair rate of a couple/minute
until the cp is done).

If interested there are way too many dmesg dumps and lspci here:
http://people.msoe.edu/~stephanb/

On the laptop, cp takes a bit (couple seconds) with umount taking at _most_
two minutes... so I would say it's working right. And that was on a file
many orders larger than the original.

I have read that some VIA chipsets may be a bit buggy, but aside from this
device I haven't had any problems, and the fact it seemingly works in 2.4
leads me to believe that it isn't (entirely, at least) the fault of the
hardware.

Anyway, dmesgs are at that url, broken up by machine. Most of the
dmesg-slow-umount-? are redundant, but the last one shows the SCSI error. I
can provide more info on request.

Thanks in advance,
Brian



-------------------------------------------------------
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click
_______________________________________________
[EMAIL PROTECTED]
To unsubscribe, use the last form field at:
https://lists.sourceforge.net/lists/listinfo/linux-usb-devel

Reply via email to