On Tue, 20 Apr 2004, Johannes Erdfelt wrote: > On Tue, Apr 20, 2004, Alan Stern <[EMAIL PROTECTED]> wrote: > > Following a suggestion of David Brownell's I have decided to remove > > support for the URB_NO_INTERRUPT flag in the UHCI driver. The overall > > effect of the flag is to reduce the number of interrupts, thereby > > improving throughput somewhat while increasing the duration of the > > remaining IRQ handlers quite a lot (i.e., increasing interrupt variance). > > So I think we're better off without it. Mind you, this is all in the > > absence of any firm measurements. > > > > A common case where this will come up is during usb-storage bulk > > transfers. Such transfers are generally divided into scatter-gather > > components each corresponding to a single URB and transferring one memory > > page (4 KB). While generating an interrupt for each one is a little > > faster than ideal -- about every 3 ms -- it's better than waiting until 64 > > KB has been transferred and there are 1024 individual TDs to clean up > > during the IRQ. > > Wouldn't this be better fixed in the USB storage driver?
Or rather, in the usb_sg_init() routine from the scatter-gather library. It could arrange to clear the URB_NO_INTERRUPT flag after every 10 ms worth of data or so, about 12 KB for a full-speed bus (see table 5-9 in the USB 2.0 spec). What do you think, David? Alan Stern ------------------------------------------------------- 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