This is a semi-experimental patch against 2.4.17 that
teaches the usb-storage driver to use bulk queueing,
rather than forcing a schedule between each URB.
Using bulk queuing is an #ifdef option, which defaults
here to being enabled.

I say "semi-experimental" because although it works
with OHCI as-is, and with EHCI after a patch I'm also
posting, I've neither tested with UHCI (either driver)
nor stressed the error handling at all.  Also, I'd like
to see this reduce the IRQ rate more than it does.

No performance measurements yet, sorry, although
with EHCI I've certainly noticed that on a slowish box
the results for 128KB I/Os (what "cp" does, also DD
with that block size) are streaming in while requests
are still getting queued, and that it feels as quick as
the IDE disk on that machine.

- Dave

Attachment: storage-0104.patch
Description: Binary data

Reply via email to