Jerome Marchand | 0e53c2b | 2008-02-08 11:10:56 +0100 | [diff] [blame] | 1 | What: /sys/block/<disk>/stat |
| 2 | Date: February 2008 |
| 3 | Contact: Jerome Marchand <jmarchan@redhat.com> |
| 4 | Description: |
| 5 | The /sys/block/<disk>/stat files displays the I/O |
| 6 | statistics of disk <disk>. They contain 11 fields: |
André Goddard Rosa | af901ca | 2009-11-14 13:09:05 -0200 | [diff] [blame] | 7 | 1 - reads completed successfully |
Jerome Marchand | 0e53c2b | 2008-02-08 11:10:56 +0100 | [diff] [blame] | 8 | 2 - reads merged |
| 9 | 3 - sectors read |
| 10 | 4 - time spent reading (ms) |
| 11 | 5 - writes completed |
| 12 | 6 - writes merged |
| 13 | 7 - sectors written |
| 14 | 8 - time spent writing (ms) |
| 15 | 9 - I/Os currently in progress |
| 16 | 10 - time spent doing I/Os (ms) |
| 17 | 11 - weighted time spent doing I/Os (ms) |
| 18 | For more details refer Documentation/iostats.txt |
| 19 | |
| 20 | |
| 21 | What: /sys/block/<disk>/<part>/stat |
| 22 | Date: February 2008 |
| 23 | Contact: Jerome Marchand <jmarchan@redhat.com> |
| 24 | Description: |
| 25 | The /sys/block/<disk>/<part>/stat files display the |
| 26 | I/O statistics of partition <part>. The format is the |
| 27 | same as the above-written /sys/block/<disk>/stat |
| 28 | format. |
Martin K. Petersen | c1c72b5 | 2008-06-17 18:59:57 +0200 | [diff] [blame] | 29 | |
| 30 | |
| 31 | What: /sys/block/<disk>/integrity/format |
| 32 | Date: June 2008 |
| 33 | Contact: Martin K. Petersen <martin.petersen@oracle.com> |
| 34 | Description: |
| 35 | Metadata format for integrity capable block device. |
| 36 | E.g. T10-DIF-TYPE1-CRC. |
| 37 | |
| 38 | |
| 39 | What: /sys/block/<disk>/integrity/read_verify |
| 40 | Date: June 2008 |
| 41 | Contact: Martin K. Petersen <martin.petersen@oracle.com> |
| 42 | Description: |
| 43 | Indicates whether the block layer should verify the |
| 44 | integrity of read requests serviced by devices that |
| 45 | support sending integrity metadata. |
| 46 | |
| 47 | |
| 48 | What: /sys/block/<disk>/integrity/tag_size |
| 49 | Date: June 2008 |
| 50 | Contact: Martin K. Petersen <martin.petersen@oracle.com> |
| 51 | Description: |
| 52 | Number of bytes of integrity tag space available per |
| 53 | 512 bytes of data. |
| 54 | |
| 55 | |
Martin K. Petersen | 3aec2f4 | 2014-09-26 19:20:03 -0400 | [diff] [blame] | 56 | What: /sys/block/<disk>/integrity/device_is_integrity_capable |
| 57 | Date: July 2014 |
| 58 | Contact: Martin K. Petersen <martin.petersen@oracle.com> |
| 59 | Description: |
| 60 | Indicates whether a storage device is capable of storing |
| 61 | integrity metadata. Set if the device is T10 PI-capable. |
| 62 | |
| 63 | |
Martin K. Petersen | c1c72b5 | 2008-06-17 18:59:57 +0200 | [diff] [blame] | 64 | What: /sys/block/<disk>/integrity/write_generate |
| 65 | Date: June 2008 |
| 66 | Contact: Martin K. Petersen <martin.petersen@oracle.com> |
| 67 | Description: |
| 68 | Indicates whether the block layer should automatically |
| 69 | generate checksums for write requests bound for |
| 70 | devices that support receiving integrity metadata. |
Martin K. Petersen | c72758f | 2009-05-22 17:17:53 -0400 | [diff] [blame] | 71 | |
| 72 | What: /sys/block/<disk>/alignment_offset |
| 73 | Date: April 2009 |
| 74 | Contact: Martin K. Petersen <martin.petersen@oracle.com> |
| 75 | Description: |
| 76 | Storage devices may report a physical block size that is |
| 77 | bigger than the logical block size (for instance a drive |
| 78 | with 4KB physical sectors exposing 512-byte logical |
| 79 | blocks to the operating system). This parameter |
| 80 | indicates how many bytes the beginning of the device is |
| 81 | offset from the disk's natural alignment. |
| 82 | |
| 83 | What: /sys/block/<disk>/<partition>/alignment_offset |
| 84 | Date: April 2009 |
| 85 | Contact: Martin K. Petersen <martin.petersen@oracle.com> |
| 86 | Description: |
| 87 | Storage devices may report a physical block size that is |
| 88 | bigger than the logical block size (for instance a drive |
| 89 | with 4KB physical sectors exposing 512-byte logical |
| 90 | blocks to the operating system). This parameter |
| 91 | indicates how many bytes the beginning of the partition |
| 92 | is offset from the disk's natural alignment. |
| 93 | |
| 94 | What: /sys/block/<disk>/queue/logical_block_size |
| 95 | Date: May 2009 |
| 96 | Contact: Martin K. Petersen <martin.petersen@oracle.com> |
| 97 | Description: |
| 98 | This is the smallest unit the storage device can |
| 99 | address. It is typically 512 bytes. |
| 100 | |
| 101 | What: /sys/block/<disk>/queue/physical_block_size |
| 102 | Date: May 2009 |
| 103 | Contact: Martin K. Petersen <martin.petersen@oracle.com> |
| 104 | Description: |
Martin K. Petersen | 7e5f5fb | 2009-07-31 11:49:13 -0400 | [diff] [blame] | 105 | This is the smallest unit a physical storage device can |
| 106 | write atomically. It is usually the same as the logical |
| 107 | block size but may be bigger. One example is SATA |
| 108 | drives with 4KB sectors that expose a 512-byte logical |
| 109 | block size to the operating system. For stacked block |
| 110 | devices the physical_block_size variable contains the |
| 111 | maximum physical_block_size of the component devices. |
Martin K. Petersen | c72758f | 2009-05-22 17:17:53 -0400 | [diff] [blame] | 112 | |
| 113 | What: /sys/block/<disk>/queue/minimum_io_size |
| 114 | Date: April 2009 |
| 115 | Contact: Martin K. Petersen <martin.petersen@oracle.com> |
| 116 | Description: |
Martin K. Petersen | 7e5f5fb | 2009-07-31 11:49:13 -0400 | [diff] [blame] | 117 | Storage devices may report a granularity or preferred |
| 118 | minimum I/O size which is the smallest request the |
| 119 | device can perform without incurring a performance |
| 120 | penalty. For disk drives this is often the physical |
| 121 | block size. For RAID arrays it is often the stripe |
| 122 | chunk size. A properly aligned multiple of |
| 123 | minimum_io_size is the preferred request size for |
| 124 | workloads where a high number of I/O operations is |
| 125 | desired. |
Martin K. Petersen | c72758f | 2009-05-22 17:17:53 -0400 | [diff] [blame] | 126 | |
| 127 | What: /sys/block/<disk>/queue/optimal_io_size |
| 128 | Date: April 2009 |
| 129 | Contact: Martin K. Petersen <martin.petersen@oracle.com> |
| 130 | Description: |
| 131 | Storage devices may report an optimal I/O size, which is |
Martin K. Petersen | 7e5f5fb | 2009-07-31 11:49:13 -0400 | [diff] [blame] | 132 | the device's preferred unit for sustained I/O. This is |
| 133 | rarely reported for disk drives. For RAID arrays it is |
| 134 | usually the stripe width or the internal track size. A |
| 135 | properly aligned multiple of optimal_io_size is the |
| 136 | preferred request size for workloads where sustained |
| 137 | throughput is desired. If no optimal I/O size is |
| 138 | reported this file contains 0. |
Alan D. Brunelle | 488991e | 2010-01-29 09:04:08 +0100 | [diff] [blame] | 139 | |
| 140 | What: /sys/block/<disk>/queue/nomerges |
| 141 | Date: January 2010 |
| 142 | Contact: |
| 143 | Description: |
| 144 | Standard I/O elevator operations include attempts to |
| 145 | merge contiguous I/Os. For known random I/O loads these |
| 146 | attempts will always fail and result in extra cycles |
| 147 | being spent in the kernel. This allows one to turn off |
| 148 | this behavior on one of two ways: When set to 1, complex |
| 149 | merge checks are disabled, but the simple one-shot merges |
| 150 | with the previous I/O request are enabled. When set to 2, |
| 151 | all merge tries are disabled. The default value is 0 - |
| 152 | which enables all types of merge tries. |
Martin K. Petersen | d70d071 | 2011-05-18 10:37:39 +0200 | [diff] [blame] | 153 | |
| 154 | What: /sys/block/<disk>/discard_alignment |
| 155 | Date: May 2011 |
| 156 | Contact: Martin K. Petersen <martin.petersen@oracle.com> |
| 157 | Description: |
| 158 | Devices that support discard functionality may |
| 159 | internally allocate space in units that are bigger than |
| 160 | the exported logical block size. The discard_alignment |
| 161 | parameter indicates how many bytes the beginning of the |
| 162 | device is offset from the internal allocation unit's |
| 163 | natural alignment. |
| 164 | |
| 165 | What: /sys/block/<disk>/<partition>/discard_alignment |
| 166 | Date: May 2011 |
| 167 | Contact: Martin K. Petersen <martin.petersen@oracle.com> |
| 168 | Description: |
| 169 | Devices that support discard functionality may |
| 170 | internally allocate space in units that are bigger than |
| 171 | the exported logical block size. The discard_alignment |
| 172 | parameter indicates how many bytes the beginning of the |
| 173 | partition is offset from the internal allocation unit's |
| 174 | natural alignment. |
| 175 | |
| 176 | What: /sys/block/<disk>/queue/discard_granularity |
| 177 | Date: May 2011 |
| 178 | Contact: Martin K. Petersen <martin.petersen@oracle.com> |
| 179 | Description: |
| 180 | Devices that support discard functionality may |
| 181 | internally allocate space using units that are bigger |
| 182 | than the logical block size. The discard_granularity |
| 183 | parameter indicates the size of the internal allocation |
| 184 | unit in bytes if reported by the device. Otherwise the |
| 185 | discard_granularity will be set to match the device's |
| 186 | physical block size. A discard_granularity of 0 means |
| 187 | that the device does not support discard functionality. |
| 188 | |
| 189 | What: /sys/block/<disk>/queue/discard_max_bytes |
| 190 | Date: May 2011 |
| 191 | Contact: Martin K. Petersen <martin.petersen@oracle.com> |
| 192 | Description: |
| 193 | Devices that support discard functionality may have |
| 194 | internal limits on the number of bytes that can be |
| 195 | trimmed or unmapped in a single operation. Some storage |
| 196 | protocols also have inherent limits on the number of |
| 197 | blocks that can be described in a single command. The |
| 198 | discard_max_bytes parameter is set by the device driver |
| 199 | to the maximum number of bytes that can be discarded in |
| 200 | a single operation. Discard requests issued to the |
| 201 | device must not exceed this limit. A discard_max_bytes |
| 202 | value of 0 means that the device does not support |
| 203 | discard functionality. |
| 204 | |
| 205 | What: /sys/block/<disk>/queue/discard_zeroes_data |
| 206 | Date: May 2011 |
| 207 | Contact: Martin K. Petersen <martin.petersen@oracle.com> |
| 208 | Description: |
| 209 | Devices that support discard functionality may return |
| 210 | stale or random data when a previously discarded block |
| 211 | is read back. This can cause problems if the filesystem |
| 212 | expects discarded blocks to be explicitly cleared. If a |
| 213 | device reports that it deterministically returns zeroes |
| 214 | when a discarded area is read the discard_zeroes_data |
| 215 | parameter will be set to one. Otherwise it will be 0 and |
| 216 | the result of reading a discarded area is undefined. |
Martin K. Petersen | 4363ac7 | 2012-09-18 12:19:27 -0400 | [diff] [blame] | 217 | |
| 218 | What: /sys/block/<disk>/queue/write_same_max_bytes |
| 219 | Date: January 2012 |
| 220 | Contact: Martin K. Petersen <martin.petersen@oracle.com> |
| 221 | Description: |
| 222 | Some devices support a write same operation in which a |
| 223 | single data block can be written to a range of several |
| 224 | contiguous blocks on storage. This can be used to wipe |
| 225 | areas on disk or to initialize drives in a RAID |
| 226 | configuration. write_same_max_bytes indicates how many |
| 227 | bytes can be written in a single write same command. If |
| 228 | write_same_max_bytes is 0, write same is not supported |
| 229 | by the device. |
| 230 | |