mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-12-06 02:24:14 +08:00
docs: sysfs-block: sort alphabetically
Sort the documentation for the files alphabetically by file path so that there is a logical order and it's clear where to add new files. With two small exceptions, this patch doesn't change the documentation itself and just reorders it: - In /sys/block/<disk>/<part>/stat, I replaced <part> with <partition> to be consistent with the other files. - The description for /sys/block/<disk>/<part>/stat referred to another file "above", which I reworded. Reviewed-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Reviewed-by: Hannes Reinecke <hare@suse.de> Reviewed-by: Martin K. Petersen <martin.petersen@oracle.com> Reviewed-by: Bart Van Assche <bvanassche@acm.org> Signed-off-by: Eric Biggers <ebiggers@google.com> Link: https://lore.kernel.org/r/20211209003833.6396-3-ebiggers@kernel.org Signed-off-by: Jens Axboe <axboe@kernel.dk>
This commit is contained in:
parent
ae7a7a5349
commit
07c9093c42
@ -1,3 +1,342 @@
|
|||||||
|
What: /sys/block/<disk>/alignment_offset
|
||||||
|
Date: April 2009
|
||||||
|
Contact: Martin K. Petersen <martin.petersen@oracle.com>
|
||||||
|
Description:
|
||||||
|
Storage devices may report a physical block size that is
|
||||||
|
bigger than the logical block size (for instance a drive
|
||||||
|
with 4KB physical sectors exposing 512-byte logical
|
||||||
|
blocks to the operating system). This parameter
|
||||||
|
indicates how many bytes the beginning of the device is
|
||||||
|
offset from the disk's natural alignment.
|
||||||
|
|
||||||
|
|
||||||
|
What: /sys/block/<disk>/discard_alignment
|
||||||
|
Date: May 2011
|
||||||
|
Contact: Martin K. Petersen <martin.petersen@oracle.com>
|
||||||
|
Description:
|
||||||
|
Devices that support discard functionality may
|
||||||
|
internally allocate space in units that are bigger than
|
||||||
|
the exported logical block size. The discard_alignment
|
||||||
|
parameter indicates how many bytes the beginning of the
|
||||||
|
device is offset from the internal allocation unit's
|
||||||
|
natural alignment.
|
||||||
|
|
||||||
|
|
||||||
|
What: /sys/block/<disk>/diskseq
|
||||||
|
Date: February 2021
|
||||||
|
Contact: Matteo Croce <mcroce@microsoft.com>
|
||||||
|
Description:
|
||||||
|
The /sys/block/<disk>/diskseq files reports the disk
|
||||||
|
sequence number, which is a monotonically increasing
|
||||||
|
number assigned to every drive.
|
||||||
|
Some devices, like the loop device, refresh such number
|
||||||
|
every time the backing file is changed.
|
||||||
|
The value type is 64 bit unsigned.
|
||||||
|
|
||||||
|
|
||||||
|
What: /sys/block/<disk>/inflight
|
||||||
|
Date: October 2009
|
||||||
|
Contact: Jens Axboe <axboe@kernel.dk>, Nikanth Karthikesan <knikanth@suse.de>
|
||||||
|
Description:
|
||||||
|
Reports the number of I/O requests currently in progress
|
||||||
|
(pending / in flight) in a device driver. This can be less
|
||||||
|
than the number of requests queued in the block device queue.
|
||||||
|
The report contains 2 fields: one for read requests
|
||||||
|
and one for write requests.
|
||||||
|
The value type is unsigned int.
|
||||||
|
Cf. Documentation/block/stat.rst which contains a single value for
|
||||||
|
requests in flight.
|
||||||
|
This is related to nr_requests in Documentation/block/queue-sysfs.rst
|
||||||
|
and for SCSI device also its queue_depth.
|
||||||
|
|
||||||
|
|
||||||
|
What: /sys/block/<disk>/integrity/device_is_integrity_capable
|
||||||
|
Date: July 2014
|
||||||
|
Contact: Martin K. Petersen <martin.petersen@oracle.com>
|
||||||
|
Description:
|
||||||
|
Indicates whether a storage device is capable of storing
|
||||||
|
integrity metadata. Set if the device is T10 PI-capable.
|
||||||
|
|
||||||
|
|
||||||
|
What: /sys/block/<disk>/integrity/format
|
||||||
|
Date: June 2008
|
||||||
|
Contact: Martin K. Petersen <martin.petersen@oracle.com>
|
||||||
|
Description:
|
||||||
|
Metadata format for integrity capable block device.
|
||||||
|
E.g. T10-DIF-TYPE1-CRC.
|
||||||
|
|
||||||
|
|
||||||
|
What: /sys/block/<disk>/integrity/protection_interval_bytes
|
||||||
|
Date: July 2015
|
||||||
|
Contact: Martin K. Petersen <martin.petersen@oracle.com>
|
||||||
|
Description:
|
||||||
|
Describes the number of data bytes which are protected
|
||||||
|
by one integrity tuple. Typically the device's logical
|
||||||
|
block size.
|
||||||
|
|
||||||
|
|
||||||
|
What: /sys/block/<disk>/integrity/read_verify
|
||||||
|
Date: June 2008
|
||||||
|
Contact: Martin K. Petersen <martin.petersen@oracle.com>
|
||||||
|
Description:
|
||||||
|
Indicates whether the block layer should verify the
|
||||||
|
integrity of read requests serviced by devices that
|
||||||
|
support sending integrity metadata.
|
||||||
|
|
||||||
|
|
||||||
|
What: /sys/block/<disk>/integrity/tag_size
|
||||||
|
Date: June 2008
|
||||||
|
Contact: Martin K. Petersen <martin.petersen@oracle.com>
|
||||||
|
Description:
|
||||||
|
Number of bytes of integrity tag space available per
|
||||||
|
512 bytes of data.
|
||||||
|
|
||||||
|
|
||||||
|
What: /sys/block/<disk>/integrity/write_generate
|
||||||
|
Date: June 2008
|
||||||
|
Contact: Martin K. Petersen <martin.petersen@oracle.com>
|
||||||
|
Description:
|
||||||
|
Indicates whether the block layer should automatically
|
||||||
|
generate checksums for write requests bound for
|
||||||
|
devices that support receiving integrity metadata.
|
||||||
|
|
||||||
|
|
||||||
|
What: /sys/block/<disk>/<partition>/alignment_offset
|
||||||
|
Date: April 2009
|
||||||
|
Contact: Martin K. Petersen <martin.petersen@oracle.com>
|
||||||
|
Description:
|
||||||
|
Storage devices may report a physical block size that is
|
||||||
|
bigger than the logical block size (for instance a drive
|
||||||
|
with 4KB physical sectors exposing 512-byte logical
|
||||||
|
blocks to the operating system). This parameter
|
||||||
|
indicates how many bytes the beginning of the partition
|
||||||
|
is offset from the disk's natural alignment.
|
||||||
|
|
||||||
|
|
||||||
|
What: /sys/block/<disk>/<partition>/discard_alignment
|
||||||
|
Date: May 2011
|
||||||
|
Contact: Martin K. Petersen <martin.petersen@oracle.com>
|
||||||
|
Description:
|
||||||
|
Devices that support discard functionality may
|
||||||
|
internally allocate space in units that are bigger than
|
||||||
|
the exported logical block size. The discard_alignment
|
||||||
|
parameter indicates how many bytes the beginning of the
|
||||||
|
partition is offset from the internal allocation unit's
|
||||||
|
natural alignment.
|
||||||
|
|
||||||
|
|
||||||
|
What: /sys/block/<disk>/<partition>/stat
|
||||||
|
Date: February 2008
|
||||||
|
Contact: Jerome Marchand <jmarchan@redhat.com>
|
||||||
|
Description:
|
||||||
|
The /sys/block/<disk>/<partition>/stat files display the
|
||||||
|
I/O statistics of partition <partition>. The format is the
|
||||||
|
same as the format of /sys/block/<disk>/stat.
|
||||||
|
|
||||||
|
|
||||||
|
What: /sys/block/<disk>/queue/chunk_sectors
|
||||||
|
Date: September 2016
|
||||||
|
Contact: Hannes Reinecke <hare@suse.com>
|
||||||
|
Description:
|
||||||
|
chunk_sectors has different meaning depending on the type
|
||||||
|
of the disk. For a RAID device (dm-raid), chunk_sectors
|
||||||
|
indicates the size in 512B sectors of the RAID volume
|
||||||
|
stripe segment. For a zoned block device, either
|
||||||
|
host-aware or host-managed, chunk_sectors indicates the
|
||||||
|
size in 512B sectors of the zones of the device, with
|
||||||
|
the eventual exception of the last zone of the device
|
||||||
|
which may be smaller.
|
||||||
|
|
||||||
|
|
||||||
|
What: /sys/block/<disk>/queue/discard_granularity
|
||||||
|
Date: May 2011
|
||||||
|
Contact: Martin K. Petersen <martin.petersen@oracle.com>
|
||||||
|
Description:
|
||||||
|
Devices that support discard functionality may
|
||||||
|
internally allocate space using units that are bigger
|
||||||
|
than the logical block size. The discard_granularity
|
||||||
|
parameter indicates the size of the internal allocation
|
||||||
|
unit in bytes if reported by the device. Otherwise the
|
||||||
|
discard_granularity will be set to match the device's
|
||||||
|
physical block size. A discard_granularity of 0 means
|
||||||
|
that the device does not support discard functionality.
|
||||||
|
|
||||||
|
|
||||||
|
What: /sys/block/<disk>/queue/discard_max_bytes
|
||||||
|
Date: May 2011
|
||||||
|
Contact: Martin K. Petersen <martin.petersen@oracle.com>
|
||||||
|
Description:
|
||||||
|
Devices that support discard functionality may have
|
||||||
|
internal limits on the number of bytes that can be
|
||||||
|
trimmed or unmapped in a single operation. Some storage
|
||||||
|
protocols also have inherent limits on the number of
|
||||||
|
blocks that can be described in a single command. The
|
||||||
|
discard_max_bytes parameter is set by the device driver
|
||||||
|
to the maximum number of bytes that can be discarded in
|
||||||
|
a single operation. Discard requests issued to the
|
||||||
|
device must not exceed this limit. A discard_max_bytes
|
||||||
|
value of 0 means that the device does not support
|
||||||
|
discard functionality.
|
||||||
|
|
||||||
|
|
||||||
|
What: /sys/block/<disk>/queue/discard_zeroes_data
|
||||||
|
Date: May 2011
|
||||||
|
Contact: Martin K. Petersen <martin.petersen@oracle.com>
|
||||||
|
Description:
|
||||||
|
Will always return 0. Don't rely on any specific behavior
|
||||||
|
for discards, and don't read this file.
|
||||||
|
|
||||||
|
|
||||||
|
What: /sys/block/<disk>/queue/io_timeout
|
||||||
|
Date: November 2018
|
||||||
|
Contact: Weiping Zhang <zhangweiping@didiglobal.com>
|
||||||
|
Description:
|
||||||
|
io_timeout is the request timeout in milliseconds. If a request
|
||||||
|
does not complete in this time then the block driver timeout
|
||||||
|
handler is invoked. That timeout handler can decide to retry
|
||||||
|
the request, to fail it or to start a device recovery strategy.
|
||||||
|
|
||||||
|
|
||||||
|
What: /sys/block/<disk>/queue/logical_block_size
|
||||||
|
Date: May 2009
|
||||||
|
Contact: Martin K. Petersen <martin.petersen@oracle.com>
|
||||||
|
Description:
|
||||||
|
This is the smallest unit the storage device can
|
||||||
|
address. It is typically 512 bytes.
|
||||||
|
|
||||||
|
|
||||||
|
What: /sys/block/<disk>/queue/max_active_zones
|
||||||
|
Date: July 2020
|
||||||
|
Contact: Niklas Cassel <niklas.cassel@wdc.com>
|
||||||
|
Description:
|
||||||
|
For zoned block devices (zoned attribute indicating
|
||||||
|
"host-managed" or "host-aware"), the sum of zones belonging to
|
||||||
|
any of the zone states: EXPLICIT OPEN, IMPLICIT OPEN or CLOSED,
|
||||||
|
is limited by this value. If this value is 0, there is no limit.
|
||||||
|
|
||||||
|
|
||||||
|
What: /sys/block/<disk>/queue/max_open_zones
|
||||||
|
Date: July 2020
|
||||||
|
Contact: Niklas Cassel <niklas.cassel@wdc.com>
|
||||||
|
Description:
|
||||||
|
For zoned block devices (zoned attribute indicating
|
||||||
|
"host-managed" or "host-aware"), the sum of zones belonging to
|
||||||
|
any of the zone states: EXPLICIT OPEN or IMPLICIT OPEN,
|
||||||
|
is limited by this value. If this value is 0, there is no limit.
|
||||||
|
|
||||||
|
|
||||||
|
What: /sys/block/<disk>/queue/minimum_io_size
|
||||||
|
Date: April 2009
|
||||||
|
Contact: Martin K. Petersen <martin.petersen@oracle.com>
|
||||||
|
Description:
|
||||||
|
Storage devices may report a granularity or preferred
|
||||||
|
minimum I/O size which is the smallest request the
|
||||||
|
device can perform without incurring a performance
|
||||||
|
penalty. For disk drives this is often the physical
|
||||||
|
block size. For RAID arrays it is often the stripe
|
||||||
|
chunk size. A properly aligned multiple of
|
||||||
|
minimum_io_size is the preferred request size for
|
||||||
|
workloads where a high number of I/O operations is
|
||||||
|
desired.
|
||||||
|
|
||||||
|
|
||||||
|
What: /sys/block/<disk>/queue/nomerges
|
||||||
|
Date: January 2010
|
||||||
|
Contact:
|
||||||
|
Description:
|
||||||
|
Standard I/O elevator operations include attempts to
|
||||||
|
merge contiguous I/Os. For known random I/O loads these
|
||||||
|
attempts will always fail and result in extra cycles
|
||||||
|
being spent in the kernel. This allows one to turn off
|
||||||
|
this behavior on one of two ways: When set to 1, complex
|
||||||
|
merge checks are disabled, but the simple one-shot merges
|
||||||
|
with the previous I/O request are enabled. When set to 2,
|
||||||
|
all merge tries are disabled. The default value is 0 -
|
||||||
|
which enables all types of merge tries.
|
||||||
|
|
||||||
|
|
||||||
|
What: /sys/block/<disk>/queue/nr_zones
|
||||||
|
Date: November 2018
|
||||||
|
Contact: Damien Le Moal <damien.lemoal@wdc.com>
|
||||||
|
Description:
|
||||||
|
nr_zones indicates the total number of zones of a zoned block
|
||||||
|
device ("host-aware" or "host-managed" zone model). For regular
|
||||||
|
block devices, the value is always 0.
|
||||||
|
|
||||||
|
|
||||||
|
What: /sys/block/<disk>/queue/optimal_io_size
|
||||||
|
Date: April 2009
|
||||||
|
Contact: Martin K. Petersen <martin.petersen@oracle.com>
|
||||||
|
Description:
|
||||||
|
Storage devices may report an optimal I/O size, which is
|
||||||
|
the device's preferred unit for sustained I/O. This is
|
||||||
|
rarely reported for disk drives. For RAID arrays it is
|
||||||
|
usually the stripe width or the internal track size. A
|
||||||
|
properly aligned multiple of optimal_io_size is the
|
||||||
|
preferred request size for workloads where sustained
|
||||||
|
throughput is desired. If no optimal I/O size is
|
||||||
|
reported this file contains 0.
|
||||||
|
|
||||||
|
|
||||||
|
What: /sys/block/<disk>/queue/physical_block_size
|
||||||
|
Date: May 2009
|
||||||
|
Contact: Martin K. Petersen <martin.petersen@oracle.com>
|
||||||
|
Description:
|
||||||
|
This is the smallest unit a physical storage device can
|
||||||
|
write atomically. It is usually the same as the logical
|
||||||
|
block size but may be bigger. One example is SATA
|
||||||
|
drives with 4KB sectors that expose a 512-byte logical
|
||||||
|
block size to the operating system. For stacked block
|
||||||
|
devices the physical_block_size variable contains the
|
||||||
|
maximum physical_block_size of the component devices.
|
||||||
|
|
||||||
|
|
||||||
|
What: /sys/block/<disk>/queue/write_same_max_bytes
|
||||||
|
Date: January 2012
|
||||||
|
Contact: Martin K. Petersen <martin.petersen@oracle.com>
|
||||||
|
Description:
|
||||||
|
Some devices support a write same operation in which a
|
||||||
|
single data block can be written to a range of several
|
||||||
|
contiguous blocks on storage. This can be used to wipe
|
||||||
|
areas on disk or to initialize drives in a RAID
|
||||||
|
configuration. write_same_max_bytes indicates how many
|
||||||
|
bytes can be written in a single write same command. If
|
||||||
|
write_same_max_bytes is 0, write same is not supported
|
||||||
|
by the device.
|
||||||
|
|
||||||
|
|
||||||
|
What: /sys/block/<disk>/queue/write_zeroes_max_bytes
|
||||||
|
Date: November 2016
|
||||||
|
Contact: Chaitanya Kulkarni <chaitanya.kulkarni@wdc.com>
|
||||||
|
Description:
|
||||||
|
Devices that support write zeroes operation in which a
|
||||||
|
single request can be issued to zero out the range of
|
||||||
|
contiguous blocks on storage without having any payload
|
||||||
|
in the request. This can be used to optimize writing zeroes
|
||||||
|
to the devices. write_zeroes_max_bytes indicates how many
|
||||||
|
bytes can be written in a single write zeroes command. If
|
||||||
|
write_zeroes_max_bytes is 0, write zeroes is not supported
|
||||||
|
by the device.
|
||||||
|
|
||||||
|
|
||||||
|
What: /sys/block/<disk>/queue/zoned
|
||||||
|
Date: September 2016
|
||||||
|
Contact: Damien Le Moal <damien.lemoal@wdc.com>
|
||||||
|
Description:
|
||||||
|
zoned indicates if the device is a zoned block device
|
||||||
|
and the zone model of the device if it is indeed zoned.
|
||||||
|
The possible values indicated by zoned are "none" for
|
||||||
|
regular block devices and "host-aware" or "host-managed"
|
||||||
|
for zoned block devices. The characteristics of
|
||||||
|
host-aware and host-managed zoned block devices are
|
||||||
|
described in the ZBC (Zoned Block Commands) and ZAC
|
||||||
|
(Zoned Device ATA Command Set) standards. These standards
|
||||||
|
also define the "drive-managed" zone model. However,
|
||||||
|
since drive-managed zoned block devices do not support
|
||||||
|
zone commands, they will be treated as regular block
|
||||||
|
devices and zoned will report "none".
|
||||||
|
|
||||||
|
|
||||||
What: /sys/block/<disk>/stat
|
What: /sys/block/<disk>/stat
|
||||||
Date: February 2008
|
Date: February 2008
|
||||||
Contact: Jerome Marchand <jmarchan@redhat.com>
|
Contact: Jerome Marchand <jmarchan@redhat.com>
|
||||||
@ -26,321 +365,3 @@ Description:
|
|||||||
== ==============================================
|
== ==============================================
|
||||||
|
|
||||||
For more details refer Documentation/admin-guide/iostats.rst
|
For more details refer Documentation/admin-guide/iostats.rst
|
||||||
|
|
||||||
|
|
||||||
What: /sys/block/<disk>/inflight
|
|
||||||
Date: October 2009
|
|
||||||
Contact: Jens Axboe <axboe@kernel.dk>, Nikanth Karthikesan <knikanth@suse.de>
|
|
||||||
Description:
|
|
||||||
Reports the number of I/O requests currently in progress
|
|
||||||
(pending / in flight) in a device driver. This can be less
|
|
||||||
than the number of requests queued in the block device queue.
|
|
||||||
The report contains 2 fields: one for read requests
|
|
||||||
and one for write requests.
|
|
||||||
The value type is unsigned int.
|
|
||||||
Cf. Documentation/block/stat.rst which contains a single value for
|
|
||||||
requests in flight.
|
|
||||||
This is related to nr_requests in Documentation/block/queue-sysfs.rst
|
|
||||||
and for SCSI device also its queue_depth.
|
|
||||||
|
|
||||||
|
|
||||||
What: /sys/block/<disk>/diskseq
|
|
||||||
Date: February 2021
|
|
||||||
Contact: Matteo Croce <mcroce@microsoft.com>
|
|
||||||
Description:
|
|
||||||
The /sys/block/<disk>/diskseq files reports the disk
|
|
||||||
sequence number, which is a monotonically increasing
|
|
||||||
number assigned to every drive.
|
|
||||||
Some devices, like the loop device, refresh such number
|
|
||||||
every time the backing file is changed.
|
|
||||||
The value type is 64 bit unsigned.
|
|
||||||
|
|
||||||
|
|
||||||
What: /sys/block/<disk>/<part>/stat
|
|
||||||
Date: February 2008
|
|
||||||
Contact: Jerome Marchand <jmarchan@redhat.com>
|
|
||||||
Description:
|
|
||||||
The /sys/block/<disk>/<part>/stat files display the
|
|
||||||
I/O statistics of partition <part>. The format is the
|
|
||||||
same as the above-written /sys/block/<disk>/stat
|
|
||||||
format.
|
|
||||||
|
|
||||||
|
|
||||||
What: /sys/block/<disk>/integrity/format
|
|
||||||
Date: June 2008
|
|
||||||
Contact: Martin K. Petersen <martin.petersen@oracle.com>
|
|
||||||
Description:
|
|
||||||
Metadata format for integrity capable block device.
|
|
||||||
E.g. T10-DIF-TYPE1-CRC.
|
|
||||||
|
|
||||||
|
|
||||||
What: /sys/block/<disk>/integrity/read_verify
|
|
||||||
Date: June 2008
|
|
||||||
Contact: Martin K. Petersen <martin.petersen@oracle.com>
|
|
||||||
Description:
|
|
||||||
Indicates whether the block layer should verify the
|
|
||||||
integrity of read requests serviced by devices that
|
|
||||||
support sending integrity metadata.
|
|
||||||
|
|
||||||
|
|
||||||
What: /sys/block/<disk>/integrity/tag_size
|
|
||||||
Date: June 2008
|
|
||||||
Contact: Martin K. Petersen <martin.petersen@oracle.com>
|
|
||||||
Description:
|
|
||||||
Number of bytes of integrity tag space available per
|
|
||||||
512 bytes of data.
|
|
||||||
|
|
||||||
|
|
||||||
What: /sys/block/<disk>/integrity/device_is_integrity_capable
|
|
||||||
Date: July 2014
|
|
||||||
Contact: Martin K. Petersen <martin.petersen@oracle.com>
|
|
||||||
Description:
|
|
||||||
Indicates whether a storage device is capable of storing
|
|
||||||
integrity metadata. Set if the device is T10 PI-capable.
|
|
||||||
|
|
||||||
What: /sys/block/<disk>/integrity/protection_interval_bytes
|
|
||||||
Date: July 2015
|
|
||||||
Contact: Martin K. Petersen <martin.petersen@oracle.com>
|
|
||||||
Description:
|
|
||||||
Describes the number of data bytes which are protected
|
|
||||||
by one integrity tuple. Typically the device's logical
|
|
||||||
block size.
|
|
||||||
|
|
||||||
What: /sys/block/<disk>/integrity/write_generate
|
|
||||||
Date: June 2008
|
|
||||||
Contact: Martin K. Petersen <martin.petersen@oracle.com>
|
|
||||||
Description:
|
|
||||||
Indicates whether the block layer should automatically
|
|
||||||
generate checksums for write requests bound for
|
|
||||||
devices that support receiving integrity metadata.
|
|
||||||
|
|
||||||
What: /sys/block/<disk>/alignment_offset
|
|
||||||
Date: April 2009
|
|
||||||
Contact: Martin K. Petersen <martin.petersen@oracle.com>
|
|
||||||
Description:
|
|
||||||
Storage devices may report a physical block size that is
|
|
||||||
bigger than the logical block size (for instance a drive
|
|
||||||
with 4KB physical sectors exposing 512-byte logical
|
|
||||||
blocks to the operating system). This parameter
|
|
||||||
indicates how many bytes the beginning of the device is
|
|
||||||
offset from the disk's natural alignment.
|
|
||||||
|
|
||||||
What: /sys/block/<disk>/<partition>/alignment_offset
|
|
||||||
Date: April 2009
|
|
||||||
Contact: Martin K. Petersen <martin.petersen@oracle.com>
|
|
||||||
Description:
|
|
||||||
Storage devices may report a physical block size that is
|
|
||||||
bigger than the logical block size (for instance a drive
|
|
||||||
with 4KB physical sectors exposing 512-byte logical
|
|
||||||
blocks to the operating system). This parameter
|
|
||||||
indicates how many bytes the beginning of the partition
|
|
||||||
is offset from the disk's natural alignment.
|
|
||||||
|
|
||||||
What: /sys/block/<disk>/queue/logical_block_size
|
|
||||||
Date: May 2009
|
|
||||||
Contact: Martin K. Petersen <martin.petersen@oracle.com>
|
|
||||||
Description:
|
|
||||||
This is the smallest unit the storage device can
|
|
||||||
address. It is typically 512 bytes.
|
|
||||||
|
|
||||||
What: /sys/block/<disk>/queue/physical_block_size
|
|
||||||
Date: May 2009
|
|
||||||
Contact: Martin K. Petersen <martin.petersen@oracle.com>
|
|
||||||
Description:
|
|
||||||
This is the smallest unit a physical storage device can
|
|
||||||
write atomically. It is usually the same as the logical
|
|
||||||
block size but may be bigger. One example is SATA
|
|
||||||
drives with 4KB sectors that expose a 512-byte logical
|
|
||||||
block size to the operating system. For stacked block
|
|
||||||
devices the physical_block_size variable contains the
|
|
||||||
maximum physical_block_size of the component devices.
|
|
||||||
|
|
||||||
What: /sys/block/<disk>/queue/minimum_io_size
|
|
||||||
Date: April 2009
|
|
||||||
Contact: Martin K. Petersen <martin.petersen@oracle.com>
|
|
||||||
Description:
|
|
||||||
Storage devices may report a granularity or preferred
|
|
||||||
minimum I/O size which is the smallest request the
|
|
||||||
device can perform without incurring a performance
|
|
||||||
penalty. For disk drives this is often the physical
|
|
||||||
block size. For RAID arrays it is often the stripe
|
|
||||||
chunk size. A properly aligned multiple of
|
|
||||||
minimum_io_size is the preferred request size for
|
|
||||||
workloads where a high number of I/O operations is
|
|
||||||
desired.
|
|
||||||
|
|
||||||
What: /sys/block/<disk>/queue/optimal_io_size
|
|
||||||
Date: April 2009
|
|
||||||
Contact: Martin K. Petersen <martin.petersen@oracle.com>
|
|
||||||
Description:
|
|
||||||
Storage devices may report an optimal I/O size, which is
|
|
||||||
the device's preferred unit for sustained I/O. This is
|
|
||||||
rarely reported for disk drives. For RAID arrays it is
|
|
||||||
usually the stripe width or the internal track size. A
|
|
||||||
properly aligned multiple of optimal_io_size is the
|
|
||||||
preferred request size for workloads where sustained
|
|
||||||
throughput is desired. If no optimal I/O size is
|
|
||||||
reported this file contains 0.
|
|
||||||
|
|
||||||
What: /sys/block/<disk>/queue/nomerges
|
|
||||||
Date: January 2010
|
|
||||||
Contact:
|
|
||||||
Description:
|
|
||||||
Standard I/O elevator operations include attempts to
|
|
||||||
merge contiguous I/Os. For known random I/O loads these
|
|
||||||
attempts will always fail and result in extra cycles
|
|
||||||
being spent in the kernel. This allows one to turn off
|
|
||||||
this behavior on one of two ways: When set to 1, complex
|
|
||||||
merge checks are disabled, but the simple one-shot merges
|
|
||||||
with the previous I/O request are enabled. When set to 2,
|
|
||||||
all merge tries are disabled. The default value is 0 -
|
|
||||||
which enables all types of merge tries.
|
|
||||||
|
|
||||||
What: /sys/block/<disk>/discard_alignment
|
|
||||||
Date: May 2011
|
|
||||||
Contact: Martin K. Petersen <martin.petersen@oracle.com>
|
|
||||||
Description:
|
|
||||||
Devices that support discard functionality may
|
|
||||||
internally allocate space in units that are bigger than
|
|
||||||
the exported logical block size. The discard_alignment
|
|
||||||
parameter indicates how many bytes the beginning of the
|
|
||||||
device is offset from the internal allocation unit's
|
|
||||||
natural alignment.
|
|
||||||
|
|
||||||
What: /sys/block/<disk>/<partition>/discard_alignment
|
|
||||||
Date: May 2011
|
|
||||||
Contact: Martin K. Petersen <martin.petersen@oracle.com>
|
|
||||||
Description:
|
|
||||||
Devices that support discard functionality may
|
|
||||||
internally allocate space in units that are bigger than
|
|
||||||
the exported logical block size. The discard_alignment
|
|
||||||
parameter indicates how many bytes the beginning of the
|
|
||||||
partition is offset from the internal allocation unit's
|
|
||||||
natural alignment.
|
|
||||||
|
|
||||||
What: /sys/block/<disk>/queue/discard_granularity
|
|
||||||
Date: May 2011
|
|
||||||
Contact: Martin K. Petersen <martin.petersen@oracle.com>
|
|
||||||
Description:
|
|
||||||
Devices that support discard functionality may
|
|
||||||
internally allocate space using units that are bigger
|
|
||||||
than the logical block size. The discard_granularity
|
|
||||||
parameter indicates the size of the internal allocation
|
|
||||||
unit in bytes if reported by the device. Otherwise the
|
|
||||||
discard_granularity will be set to match the device's
|
|
||||||
physical block size. A discard_granularity of 0 means
|
|
||||||
that the device does not support discard functionality.
|
|
||||||
|
|
||||||
What: /sys/block/<disk>/queue/discard_max_bytes
|
|
||||||
Date: May 2011
|
|
||||||
Contact: Martin K. Petersen <martin.petersen@oracle.com>
|
|
||||||
Description:
|
|
||||||
Devices that support discard functionality may have
|
|
||||||
internal limits on the number of bytes that can be
|
|
||||||
trimmed or unmapped in a single operation. Some storage
|
|
||||||
protocols also have inherent limits on the number of
|
|
||||||
blocks that can be described in a single command. The
|
|
||||||
discard_max_bytes parameter is set by the device driver
|
|
||||||
to the maximum number of bytes that can be discarded in
|
|
||||||
a single operation. Discard requests issued to the
|
|
||||||
device must not exceed this limit. A discard_max_bytes
|
|
||||||
value of 0 means that the device does not support
|
|
||||||
discard functionality.
|
|
||||||
|
|
||||||
What: /sys/block/<disk>/queue/discard_zeroes_data
|
|
||||||
Date: May 2011
|
|
||||||
Contact: Martin K. Petersen <martin.petersen@oracle.com>
|
|
||||||
Description:
|
|
||||||
Will always return 0. Don't rely on any specific behavior
|
|
||||||
for discards, and don't read this file.
|
|
||||||
|
|
||||||
What: /sys/block/<disk>/queue/write_same_max_bytes
|
|
||||||
Date: January 2012
|
|
||||||
Contact: Martin K. Petersen <martin.petersen@oracle.com>
|
|
||||||
Description:
|
|
||||||
Some devices support a write same operation in which a
|
|
||||||
single data block can be written to a range of several
|
|
||||||
contiguous blocks on storage. This can be used to wipe
|
|
||||||
areas on disk or to initialize drives in a RAID
|
|
||||||
configuration. write_same_max_bytes indicates how many
|
|
||||||
bytes can be written in a single write same command. If
|
|
||||||
write_same_max_bytes is 0, write same is not supported
|
|
||||||
by the device.
|
|
||||||
|
|
||||||
What: /sys/block/<disk>/queue/write_zeroes_max_bytes
|
|
||||||
Date: November 2016
|
|
||||||
Contact: Chaitanya Kulkarni <chaitanya.kulkarni@wdc.com>
|
|
||||||
Description:
|
|
||||||
Devices that support write zeroes operation in which a
|
|
||||||
single request can be issued to zero out the range of
|
|
||||||
contiguous blocks on storage without having any payload
|
|
||||||
in the request. This can be used to optimize writing zeroes
|
|
||||||
to the devices. write_zeroes_max_bytes indicates how many
|
|
||||||
bytes can be written in a single write zeroes command. If
|
|
||||||
write_zeroes_max_bytes is 0, write zeroes is not supported
|
|
||||||
by the device.
|
|
||||||
|
|
||||||
What: /sys/block/<disk>/queue/zoned
|
|
||||||
Date: September 2016
|
|
||||||
Contact: Damien Le Moal <damien.lemoal@wdc.com>
|
|
||||||
Description:
|
|
||||||
zoned indicates if the device is a zoned block device
|
|
||||||
and the zone model of the device if it is indeed zoned.
|
|
||||||
The possible values indicated by zoned are "none" for
|
|
||||||
regular block devices and "host-aware" or "host-managed"
|
|
||||||
for zoned block devices. The characteristics of
|
|
||||||
host-aware and host-managed zoned block devices are
|
|
||||||
described in the ZBC (Zoned Block Commands) and ZAC
|
|
||||||
(Zoned Device ATA Command Set) standards. These standards
|
|
||||||
also define the "drive-managed" zone model. However,
|
|
||||||
since drive-managed zoned block devices do not support
|
|
||||||
zone commands, they will be treated as regular block
|
|
||||||
devices and zoned will report "none".
|
|
||||||
|
|
||||||
What: /sys/block/<disk>/queue/nr_zones
|
|
||||||
Date: November 2018
|
|
||||||
Contact: Damien Le Moal <damien.lemoal@wdc.com>
|
|
||||||
Description:
|
|
||||||
nr_zones indicates the total number of zones of a zoned block
|
|
||||||
device ("host-aware" or "host-managed" zone model). For regular
|
|
||||||
block devices, the value is always 0.
|
|
||||||
|
|
||||||
What: /sys/block/<disk>/queue/max_active_zones
|
|
||||||
Date: July 2020
|
|
||||||
Contact: Niklas Cassel <niklas.cassel@wdc.com>
|
|
||||||
Description:
|
|
||||||
For zoned block devices (zoned attribute indicating
|
|
||||||
"host-managed" or "host-aware"), the sum of zones belonging to
|
|
||||||
any of the zone states: EXPLICIT OPEN, IMPLICIT OPEN or CLOSED,
|
|
||||||
is limited by this value. If this value is 0, there is no limit.
|
|
||||||
|
|
||||||
What: /sys/block/<disk>/queue/max_open_zones
|
|
||||||
Date: July 2020
|
|
||||||
Contact: Niklas Cassel <niklas.cassel@wdc.com>
|
|
||||||
Description:
|
|
||||||
For zoned block devices (zoned attribute indicating
|
|
||||||
"host-managed" or "host-aware"), the sum of zones belonging to
|
|
||||||
any of the zone states: EXPLICIT OPEN or IMPLICIT OPEN,
|
|
||||||
is limited by this value. If this value is 0, there is no limit.
|
|
||||||
|
|
||||||
What: /sys/block/<disk>/queue/chunk_sectors
|
|
||||||
Date: September 2016
|
|
||||||
Contact: Hannes Reinecke <hare@suse.com>
|
|
||||||
Description:
|
|
||||||
chunk_sectors has different meaning depending on the type
|
|
||||||
of the disk. For a RAID device (dm-raid), chunk_sectors
|
|
||||||
indicates the size in 512B sectors of the RAID volume
|
|
||||||
stripe segment. For a zoned block device, either
|
|
||||||
host-aware or host-managed, chunk_sectors indicates the
|
|
||||||
size in 512B sectors of the zones of the device, with
|
|
||||||
the eventual exception of the last zone of the device
|
|
||||||
which may be smaller.
|
|
||||||
|
|
||||||
What: /sys/block/<disk>/queue/io_timeout
|
|
||||||
Date: November 2018
|
|
||||||
Contact: Weiping Zhang <zhangweiping@didiglobal.com>
|
|
||||||
Description:
|
|
||||||
io_timeout is the request timeout in milliseconds. If a request
|
|
||||||
does not complete in this time then the block driver timeout
|
|
||||||
handler is invoked. That timeout handler can decide to retry
|
|
||||||
the request, to fail it or to start a device recovery strategy.
|
|
||||||
|
Loading…
Reference in New Issue
Block a user