[SCSI] relax scsi dma alignment
This patch relaxes the default SCSI DMA alignment from 512 bytes to 4 bytes. I remember from previous discussions that usb and firewire have sector size alignment requirements, so I upped their alignments in the respective slave allocs. The reason for doing this is so that we don't get such a huge amount of copy overhead in bio_copy_user() for udev. (basically all inquiries it issues can now be directly mapped). Acked-by: Alan Stern <stern@rowland.harvard.edu> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
This commit is contained in:
@ -1668,6 +1668,14 @@ struct request_queue *__scsi_alloc_queue(struct Scsi_Host *shost,
|
||||
|
||||
if (!shost->use_clustering)
|
||||
clear_bit(QUEUE_FLAG_CLUSTER, &q->queue_flags);
|
||||
|
||||
/*
|
||||
* set a reasonable default alignment on word boundaries: the
|
||||
* host and device may alter it using
|
||||
* blk_queue_update_dma_alignment() later.
|
||||
*/
|
||||
blk_queue_dma_alignment(q, 0x03);
|
||||
|
||||
return q;
|
||||
}
|
||||
EXPORT_SYMBOL(__scsi_alloc_queue);
|
||||
|
Reference in New Issue
Block a user