blob: e34cdeeeb9d420a673f5236ff59ec99242630a40 [file] [log] [blame]
Jerome Marchand0e53c2b2008-02-08 11:10:56 +01001What: /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:
Mauro Carvalho Chehab34433332020-10-30 08:40:39 +01007
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
Mauro Carvalho Chehab4f4cfa62019-06-27 14:56:51 -030028 For more details refer Documentation/admin-guide/iostats.rst
Jerome Marchand0e53c2b2008-02-08 11:10:56 +010029
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.
Martin K. Petersenc1c72b52008-06-17 18:59:57 +020039
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
Martin K. Petersen3aec2f42014-09-26 19:20:03 -040066What: /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
Martin K. Petersen4c241d02015-10-21 13:19:43 -040073What: /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.
Martin K. Petersen3aec2f42014-09-26 19:20:03 -040080
Martin K. Petersenc1c72b52008-06-17 18:59:57 +020081What: /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.
Martin K. Petersenc72758f2009-05-22 17:17:53 -040088
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:
Martin K. Petersen7e5f5fb2009-07-31 11:49:13 -0400122 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.
Martin K. Petersenc72758f2009-05-22 17:17:53 -0400129
130What: /sys/block/<disk>/queue/minimum_io_size
131Date: April 2009
132Contact: Martin K. Petersen <martin.petersen@oracle.com>
133Description:
Martin K. Petersen7e5f5fb2009-07-31 11:49:13 -0400134 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.
Martin K. Petersenc72758f2009-05-22 17:17:53 -0400143
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
Martin K. Petersen7e5f5fb2009-07-31 11:49:13 -0400149 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.
Alan D. Brunelle488991e2010-01-29 09:04:08 +0100156
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.
Martin K. Petersend70d0712011-05-18 10:37:39 +0200170
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:
Christoph Hellwig48920ff2017-04-05 19:21:23 +0200226 Will always return 0. Don't rely on any specific behavior
227 for discards, and don't read this file.
Martin K. Petersen4363ac72012-09-18 12:19:27 -0400228
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
Chaitanya Kulkarnia6f07882016-11-30 12:28:59 -0800242What: /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
Damien Le Moal797476b2016-10-18 15:40:29 +0900255What: /sys/block/<disk>/queue/zoned
256Date: September 2016
Damien Le Moalf9824952018-11-30 14:36:24 +0900257Contact: Damien Le Moal <damien.lemoal@wdc.com>
Damien Le Moal797476b2016-10-18 15:40:29 +0900258Description:
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".
Hannes Reinecke87caf972016-10-18 15:40:30 +0900271
Damien Le Moalf9824952018-11-30 14:36:24 +0900272What: /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
Niklas Cassel659bf822020-07-14 23:18:24 +0200280What: /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
Niklas Cassele15864f2020-07-14 23:18:23 +0200289What: /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
Hannes Reinecke87caf972016-10-18 15:40:30 +0900298What: /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
Damien Le Moalf9824952018-11-30 14:36:24 +0900307 size in 512B sectors of the zones of the device, with
Hannes Reinecke87caf972016-10-18 15:40:30 +0900308 the eventual exception of the last zone of the device
309 which may be smaller.
Weiping Zhangbb351ab2018-12-26 11:56:33 +0800310
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.