On Thu, Apr 23, 2009 at 12:51:45PM +0200, Jens Axboe wrote: > > +/** > > + * blk_queue_alignment - set alignment for the queue > > + * @q: the request queue for the device > > + * @alignment: alignment offset in bytes > > + * > > + * Description: > > + * Some devices are naturally misaligned to compensate for things like > > + * the legacy DOS partition table 63-sector offset. Low-level drivers > > + * should call this function for devices whose first sector is not > > + * naturally aligned. > > + */ > > +void blk_queue_alignment(struct request_queue *q, unsigned int alignment) > > +{ > > + q->alignment = alignment & (q->granularity - 1); > > + clear_bit(QUEUE_FLAG_MISALIGNED, &q->queue_flags); > > +} > > +EXPORT_SYMBOL(blk_queue_alignment); > > How would low-level drivers know? ATA reports this in the INQUIRY data. SCSI reports it in READ CAPACITY 16. -- Matthew Wilcox Intel Open Source Technology Centre "Bill, look, we understand that you're interested in selling us this operating system, but compare it to ours. We can't possibly take such a retrograde step." -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html