> > My suspicion is that long SG lists are unusual - otherwise the > > ring expansion code would have been needed much earlier. > > > > Can anyone remember whether that was needed because of long SG lists > > or because of large numbers of outstanding requests? > > > > I've seen it for network cards - but only because usbnet sends > > down far too many tx buffers. > > usb-storage limits the maximum transfer size to 120K. That is a max of > 31 page-size segments if my math is right. That's probably why mass-storage > never saw a problem. I found some references to mass storage running out of ring space. My best guess as to why mass storage has never had a problem with the alignment at link TRBs is that the effect of getting it wrong is to split the transfer. Since almost all the transfers are of page aligned data that will only happen on a 1k boundary - where it is invisible to the target. For USB2 targets the link TRB only has to be 512 byte aligned. The constraint that mass storage applied for the usb2 controllers is enough to satisfy it. David -- To unsubscribe from this list: send the line "unsubscribe linux-usb" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html