1What: /sys/block/<disk>/alignment_offset 2Date: April 2009 3Contact: Martin K. Petersen <martin.petersen@oracle.com> 4Description: 5 Storage devices may report a physical block size that is 6 bigger than the logical block size (for instance a drive 7 with 4KB physical sectors exposing 512-byte logical 8 blocks to the operating system). This parameter 9 indicates how many bytes the beginning of the device is 10 offset from the disk's natural alignment. 11 12 13What: /sys/block/<disk>/discard_alignment 14Date: May 2011 15Contact: Martin K. Petersen <martin.petersen@oracle.com> 16Description: 17 Devices that support discard functionality may 18 internally allocate space in units that are bigger than 19 the exported logical block size. The discard_alignment 20 parameter indicates how many bytes the beginning of the 21 device is offset from the internal allocation unit's 22 natural alignment. 23 24 25What: /sys/block/<disk>/diskseq 26Date: February 2021 27Contact: Matteo Croce <mcroce@microsoft.com> 28Description: 29 The /sys/block/<disk>/diskseq files reports the disk 30 sequence number, which is a monotonically increasing 31 number assigned to every drive. 32 Some devices, like the loop device, refresh such number 33 every time the backing file is changed. 34 The value type is 64 bit unsigned. 35 36 37What: /sys/block/<disk>/inflight 38Date: October 2009 39Contact: Jens Axboe <axboe@kernel.dk>, Nikanth Karthikesan <knikanth@suse.de> 40Description: 41 Reports the number of I/O requests currently in progress 42 (pending / in flight) in a device driver. This can be less 43 than the number of requests queued in the block device queue. 44 The report contains 2 fields: one for read requests 45 and one for write requests. 46 The value type is unsigned int. 47 Cf. Documentation/block/stat.rst which contains a single value for 48 requests in flight. 49 This is related to nr_requests in Documentation/block/queue-sysfs.rst 50 and for SCSI device also its queue_depth. 51 52 53What: /sys/block/<disk>/integrity/device_is_integrity_capable 54Date: July 2014 55Contact: Martin K. Petersen <martin.petersen@oracle.com> 56Description: 57 Indicates whether a storage device is capable of storing 58 integrity metadata. Set if the device is T10 PI-capable. 59 60 61What: /sys/block/<disk>/integrity/format 62Date: June 2008 63Contact: Martin K. Petersen <martin.petersen@oracle.com> 64Description: 65 Metadata format for integrity capable block device. 66 E.g. T10-DIF-TYPE1-CRC. 67 68 69What: /sys/block/<disk>/integrity/protection_interval_bytes 70Date: July 2015 71Contact: Martin K. Petersen <martin.petersen@oracle.com> 72Description: 73 Describes the number of data bytes which are protected 74 by one integrity tuple. Typically the device's logical 75 block size. 76 77 78What: /sys/block/<disk>/integrity/read_verify 79Date: June 2008 80Contact: Martin K. Petersen <martin.petersen@oracle.com> 81Description: 82 Indicates whether the block layer should verify the 83 integrity of read requests serviced by devices that 84 support sending integrity metadata. 85 86 87What: /sys/block/<disk>/integrity/tag_size 88Date: June 2008 89Contact: Martin K. Petersen <martin.petersen@oracle.com> 90Description: 91 Number of bytes of integrity tag space available per 92 512 bytes of data. 93 94 95What: /sys/block/<disk>/integrity/write_generate 96Date: June 2008 97Contact: Martin K. Petersen <martin.petersen@oracle.com> 98Description: 99 Indicates whether the block layer should automatically 100 generate checksums for write requests bound for 101 devices that support receiving integrity metadata. 102 103 104What: /sys/block/<disk>/<partition>/alignment_offset 105Date: April 2009 106Contact: Martin K. Petersen <martin.petersen@oracle.com> 107Description: 108 Storage devices may report a physical block size that is 109 bigger than the logical block size (for instance a drive 110 with 4KB physical sectors exposing 512-byte logical 111 blocks to the operating system). This parameter 112 indicates how many bytes the beginning of the partition 113 is offset from the disk's natural alignment. 114 115 116What: /sys/block/<disk>/<partition>/discard_alignment 117Date: May 2011 118Contact: Martin K. Petersen <martin.petersen@oracle.com> 119Description: 120 Devices that support discard functionality may 121 internally allocate space in units that are bigger than 122 the exported logical block size. The discard_alignment 123 parameter indicates how many bytes the beginning of the 124 partition is offset from the internal allocation unit's 125 natural alignment. 126 127 128What: /sys/block/<disk>/<partition>/stat 129Date: February 2008 130Contact: Jerome Marchand <jmarchan@redhat.com> 131Description: 132 The /sys/block/<disk>/<partition>/stat files display the 133 I/O statistics of partition <partition>. The format is the 134 same as the format of /sys/block/<disk>/stat. 135 136 137What: /sys/block/<disk>/queue/chunk_sectors 138Date: September 2016 139Contact: Hannes Reinecke <hare@suse.com> 140Description: 141 chunk_sectors has different meaning depending on the type 142 of the disk. For a RAID device (dm-raid), chunk_sectors 143 indicates the size in 512B sectors of the RAID volume 144 stripe segment. For a zoned block device, either 145 host-aware or host-managed, chunk_sectors indicates the 146 size in 512B sectors of the zones of the device, with 147 the eventual exception of the last zone of the device 148 which may be smaller. 149 150 151What: /sys/block/<disk>/queue/discard_granularity 152Date: May 2011 153Contact: Martin K. Petersen <martin.petersen@oracle.com> 154Description: 155 Devices that support discard functionality may 156 internally allocate space using units that are bigger 157 than the logical block size. The discard_granularity 158 parameter indicates the size of the internal allocation 159 unit in bytes if reported by the device. Otherwise the 160 discard_granularity will be set to match the device's 161 physical block size. A discard_granularity of 0 means 162 that the device does not support discard functionality. 163 164 165What: /sys/block/<disk>/queue/discard_max_bytes 166Date: May 2011 167Contact: Martin K. Petersen <martin.petersen@oracle.com> 168Description: 169 Devices that support discard functionality may have 170 internal limits on the number of bytes that can be 171 trimmed or unmapped in a single operation. Some storage 172 protocols also have inherent limits on the number of 173 blocks that can be described in a single command. The 174 discard_max_bytes parameter is set by the device driver 175 to the maximum number of bytes that can be discarded in 176 a single operation. Discard requests issued to the 177 device must not exceed this limit. A discard_max_bytes 178 value of 0 means that the device does not support 179 discard functionality. 180 181 182What: /sys/block/<disk>/queue/discard_zeroes_data 183Date: May 2011 184Contact: Martin K. Petersen <martin.petersen@oracle.com> 185Description: 186 Will always return 0. Don't rely on any specific behavior 187 for discards, and don't read this file. 188 189 190What: /sys/block/<disk>/queue/io_timeout 191Date: November 2018 192Contact: Weiping Zhang <zhangweiping@didiglobal.com> 193Description: 194 io_timeout is the request timeout in milliseconds. If a request 195 does not complete in this time then the block driver timeout 196 handler is invoked. That timeout handler can decide to retry 197 the request, to fail it or to start a device recovery strategy. 198 199 200What: /sys/block/<disk>/queue/logical_block_size 201Date: May 2009 202Contact: Martin K. Petersen <martin.petersen@oracle.com> 203Description: 204 This is the smallest unit the storage device can 205 address. It is typically 512 bytes. 206 207 208What: /sys/block/<disk>/queue/max_active_zones 209Date: July 2020 210Contact: Niklas Cassel <niklas.cassel@wdc.com> 211Description: 212 For zoned block devices (zoned attribute indicating 213 "host-managed" or "host-aware"), the sum of zones belonging to 214 any of the zone states: EXPLICIT OPEN, IMPLICIT OPEN or CLOSED, 215 is limited by this value. If this value is 0, there is no limit. 216 217 218What: /sys/block/<disk>/queue/max_open_zones 219Date: July 2020 220Contact: Niklas Cassel <niklas.cassel@wdc.com> 221Description: 222 For zoned block devices (zoned attribute indicating 223 "host-managed" or "host-aware"), the sum of zones belonging to 224 any of the zone states: EXPLICIT OPEN or IMPLICIT OPEN, 225 is limited by this value. If this value is 0, there is no limit. 226 227 228What: /sys/block/<disk>/queue/minimum_io_size 229Date: April 2009 230Contact: Martin K. Petersen <martin.petersen@oracle.com> 231Description: 232 Storage devices may report a granularity or preferred 233 minimum I/O size which is the smallest request the 234 device can perform without incurring a performance 235 penalty. For disk drives this is often the physical 236 block size. For RAID arrays it is often the stripe 237 chunk size. A properly aligned multiple of 238 minimum_io_size is the preferred request size for 239 workloads where a high number of I/O operations is 240 desired. 241 242 243What: /sys/block/<disk>/queue/nomerges 244Date: January 2010 245Contact: linux-block@vger.kernel.org 246Description: 247 Standard I/O elevator operations include attempts to 248 merge contiguous I/Os. For known random I/O loads these 249 attempts will always fail and result in extra cycles 250 being spent in the kernel. This allows one to turn off 251 this behavior on one of two ways: When set to 1, complex 252 merge checks are disabled, but the simple one-shot merges 253 with the previous I/O request are enabled. When set to 2, 254 all merge tries are disabled. The default value is 0 - 255 which enables all types of merge tries. 256 257 258What: /sys/block/<disk>/queue/nr_zones 259Date: November 2018 260Contact: Damien Le Moal <damien.lemoal@wdc.com> 261Description: 262 nr_zones indicates the total number of zones of a zoned block 263 device ("host-aware" or "host-managed" zone model). For regular 264 block devices, the value is always 0. 265 266 267What: /sys/block/<disk>/queue/optimal_io_size 268Date: April 2009 269Contact: Martin K. Petersen <martin.petersen@oracle.com> 270Description: 271 Storage devices may report an optimal I/O size, which is 272 the device's preferred unit for sustained I/O. This is 273 rarely reported for disk drives. For RAID arrays it is 274 usually the stripe width or the internal track size. A 275 properly aligned multiple of optimal_io_size is the 276 preferred request size for workloads where sustained 277 throughput is desired. If no optimal I/O size is 278 reported this file contains 0. 279 280 281What: /sys/block/<disk>/queue/physical_block_size 282Date: May 2009 283Contact: Martin K. Petersen <martin.petersen@oracle.com> 284Description: 285 This is the smallest unit a physical storage device can 286 write atomically. It is usually the same as the logical 287 block size but may be bigger. One example is SATA 288 drives with 4KB sectors that expose a 512-byte logical 289 block size to the operating system. For stacked block 290 devices the physical_block_size variable contains the 291 maximum physical_block_size of the component devices. 292 293 294What: /sys/block/<disk>/queue/write_same_max_bytes 295Date: January 2012 296Contact: Martin K. Petersen <martin.petersen@oracle.com> 297Description: 298 Some devices support a write same operation in which a 299 single data block can be written to a range of several 300 contiguous blocks on storage. This can be used to wipe 301 areas on disk or to initialize drives in a RAID 302 configuration. write_same_max_bytes indicates how many 303 bytes can be written in a single write same command. If 304 write_same_max_bytes is 0, write same is not supported 305 by the device. 306 307 308What: /sys/block/<disk>/queue/write_zeroes_max_bytes 309Date: November 2016 310Contact: Chaitanya Kulkarni <chaitanya.kulkarni@wdc.com> 311Description: 312 Devices that support write zeroes operation in which a 313 single request can be issued to zero out the range of 314 contiguous blocks on storage without having any payload 315 in the request. This can be used to optimize writing zeroes 316 to the devices. write_zeroes_max_bytes indicates how many 317 bytes can be written in a single write zeroes command. If 318 write_zeroes_max_bytes is 0, write zeroes is not supported 319 by the device. 320 321 322What: /sys/block/<disk>/queue/zoned 323Date: September 2016 324Contact: Damien Le Moal <damien.lemoal@wdc.com> 325Description: 326 zoned indicates if the device is a zoned block device 327 and the zone model of the device if it is indeed zoned. 328 The possible values indicated by zoned are "none" for 329 regular block devices and "host-aware" or "host-managed" 330 for zoned block devices. The characteristics of 331 host-aware and host-managed zoned block devices are 332 described in the ZBC (Zoned Block Commands) and ZAC 333 (Zoned Device ATA Command Set) standards. These standards 334 also define the "drive-managed" zone model. However, 335 since drive-managed zoned block devices do not support 336 zone commands, they will be treated as regular block 337 devices and zoned will report "none". 338 339 340What: /sys/block/<disk>/stat 341Date: February 2008 342Contact: Jerome Marchand <jmarchan@redhat.com> 343Description: 344 The /sys/block/<disk>/stat files displays the I/O 345 statistics of disk <disk>. They contain 11 fields: 346 347 == ============================================== 348 1 reads completed successfully 349 2 reads merged 350 3 sectors read 351 4 time spent reading (ms) 352 5 writes completed 353 6 writes merged 354 7 sectors written 355 8 time spent writing (ms) 356 9 I/Os currently in progress 357 10 time spent doing I/Os (ms) 358 11 weighted time spent doing I/Os (ms) 359 12 discards completed 360 13 discards merged 361 14 sectors discarded 362 15 time spent discarding (ms) 363 16 flush requests completed 364 17 time spent flushing (ms) 365 == ============================================== 366 367 For more details refer Documentation/admin-guide/iostats.rst 368