Hi! > From: Ming Lei > > [ Upstream commit c53336c8f5f29043fded57912cc06c24e12613d7 ] > > Logical block size is the lowest possible block size that the storage > device can address. Max segment size is often related with controller's > DMA capability. And it is reasonable to align max segment size with > logical block size. > SDHCI sets un-aligned max segment size, and causes ADMA error, so > fix it by aligning max segment size with logical block size. If un-aligned max segment sizes are problem, should we add checks to prevent setting them? At least these set unaligned problems; is that a problem? drivers/block/nbd.c: blk_queue_max_segment_size(disk->queue, UINT_MAX); drivers/block/virtio_blk.c: blk_queue_max_segment_size(q, -1U); drivers/block/rbd.c: blk_queue_max_segment_size(q, UINT_MAX); Best regards, Pavel -- (english) http://www.livejournal.com/~pavelmachek (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html