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

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Dec 05, 2019 at 11:22:47PM +0100, Pavel Machek wrote:
> 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);

In theory, all segment size should be aligned, however the above MAX
value just means the queue hasn't max segment size limit, so it won't
be applied actually.


Thanks,
Ming





[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux