On Wed, 19 Nov 2003, Jens Axboe wrote: > The queue already has such a restriction embedded, see bio_map_user() > and queue_dma_alignment().
Searching through the 2.6 kernel source gave some interesting results. queue_dma_alignment() does nothing but set the dma_alignment field of the request queue structure. The _only_ place this field is used is in fs/bio.c by __bio_map_user(), called from bio_map_user(). In turn, the _only_ place bio_map_user() is called is from drivers/block/scsi_ioctl.c, and that's only for a certain specific type of SCSI ioctl. It's not on any main code path, and it wouldn't get invoked by anything using the st or sg drivers. In fact, it looks like scsi_ioctl.c:scsi_cmd_ioctl() is only called from within the sd driver. So something needs to be fixed up. Is there some spot in the block layer that's supposed to be checking dma alignments but isn't doing so? Alan Stern ------------------------------------------------------- This SF.net email is sponsored by: SF.net Giveback Program. Does SourceForge.net help you be more productive? Does it help you create better code? SHARE THE LOVE, and help us help YOU! Click Here: http://sourceforge.net/donate/ _______________________________________________ [EMAIL PROTECTED] To unsubscribe, use the last form field at: https://lists.sourceforge.net/lists/listinfo/linux-usb-devel
