> From: Alan Stern [mailto:stern@xxxxxxxxxxxxxxxxxxx] > On Wed, 20 Nov 2013, David Laight wrote: > > > > From: Sarah Sharp > > ... > > > (Also, usb-storage aligns the block sizes to 512K, which explains why > > > we've never had an issue with TD fragments with that driver.) > > > > What is a 'block' in that context? > > I think Sarah means that usb-storage requires the block layer to align > its data buffers to 512-byte boundaries. (Note: 512 bytes, not 512K.) I did think it might be a typo... > Disk I/O naturally tends to be done in units of the page size, anyway, > although raw I/O can involve single sectors. > > If a user supplies an unaligned buffer, the block layer will set up a > bounce buffer. Ah, ok, some other systems only do that from byte-misaligned buffers (for general disk access). The ehci alignment rules force 512 byte alignment. That does mean that USB2 mass storage devices (attached to xhci) will never generate incorrectly aligned link TRBs. The ax88179_178a driver might still do so. 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