lkml.org 
[lkml]   [2014]   [Nov]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: absurdly high "optimal_io_size" on Seagate SAS disk
From
Date
>>>>> "Rob" == Elliott, Robert (Server Storage) <Elliott@hp.com> writes:

Rob,

Rob> * the block layer BIO_MAX_PAGES value of 256 limits IOs
Rob> to a maximum of 1 MiB

We do support scatterlist chaining, though.

Rob> * SCSI LLDs report their maximum transfer size in
Rob> /sys/block/sdNN/queue/max_hw_sectors_kb
Rob> * the SCSI midlayer maximum transfer size is set/reported
Rob> in /sys/block/sdNN/queue/max_sectors_kb and the default is 512
Rob> KiB
Rob> * the SCSI LLD maximum number of scatter gather entries
Rob> reported in /sys/block/sdNN/queue/max_segments and
Rob> /sys/block/sdNN/queue/max_segment_size creates a limit based on
Rob> how fragmented the data buffer is in virtual memory
Rob> * the Block Limits VPD page MAXIMUM TRANSFER LENGTH field
Rob> indicates the maximum transfer size for one command over the SCSI
Rob> transport protocol supported by the drive itself

Yep. We're already capping the actual max I/O size based on all of the
above. However, the purpose of exposing io_opt was to be able to report
stripe size to partitioning tools and filesystems for alignment
purposes. And although they would ideally be the same it was always
anticipated that stripe size could be bigger than the max I/O size.

--
Martin K. Petersen Oracle Linux Engineering


\
 
 \ /
  Last update: 2014-11-07 19:01    [W:0.077 / U:0.192 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site