Re: [PATCH 4.19 240/321] mmc: core: align max segment size with logical block size

From: Pavel Machek
Date: Thu Dec 05 2019 - 17:22:51 EST


Hi!

> From: Ming Lei <ming.lei@xxxxxxxxxx>
>
> [ 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

Attachment: signature.asc
Description: PGP signature