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