Commit d70d0711edd8076ec2ce0ed109106e2df950681b

Authored by Martin K. Petersen
Committed by Jens Axboe
1 parent a934a00a69

block: Add sysfs documentation for the discard topology parameters

Add documentation for the discard I/O topology parameters exported in
sysfs.

Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: Jens Axboe <jaxboe@fusionio.com>

Showing 1 changed file with 64 additions and 0 deletions Side-by-side Diff

Documentation/ABI/testing/sysfs-block
... ... @@ -142,4 +142,68 @@
142 142 with the previous I/O request are enabled. When set to 2,
143 143 all merge tries are disabled. The default value is 0 -
144 144 which enables all types of merge tries.
  145 +
  146 +What: /sys/block/<disk>/discard_alignment
  147 +Date: May 2011
  148 +Contact: Martin K. Petersen <martin.petersen@oracle.com>
  149 +Description:
  150 + Devices that support discard functionality may
  151 + internally allocate space in units that are bigger than
  152 + the exported logical block size. The discard_alignment
  153 + parameter indicates how many bytes the beginning of the
  154 + device is offset from the internal allocation unit's
  155 + natural alignment.
  156 +
  157 +What: /sys/block/<disk>/<partition>/discard_alignment
  158 +Date: May 2011
  159 +Contact: Martin K. Petersen <martin.petersen@oracle.com>
  160 +Description:
  161 + Devices that support discard functionality may
  162 + internally allocate space in units that are bigger than
  163 + the exported logical block size. The discard_alignment
  164 + parameter indicates how many bytes the beginning of the
  165 + partition is offset from the internal allocation unit's
  166 + natural alignment.
  167 +
  168 +What: /sys/block/<disk>/queue/discard_granularity
  169 +Date: May 2011
  170 +Contact: Martin K. Petersen <martin.petersen@oracle.com>
  171 +Description:
  172 + Devices that support discard functionality may
  173 + internally allocate space using units that are bigger
  174 + than the logical block size. The discard_granularity
  175 + parameter indicates the size of the internal allocation
  176 + unit in bytes if reported by the device. Otherwise the
  177 + discard_granularity will be set to match the device's
  178 + physical block size. A discard_granularity of 0 means
  179 + that the device does not support discard functionality.
  180 +
  181 +What: /sys/block/<disk>/queue/discard_max_bytes
  182 +Date: May 2011
  183 +Contact: Martin K. Petersen <martin.petersen@oracle.com>
  184 +Description:
  185 + Devices that support discard functionality may have
  186 + internal limits on the number of bytes that can be
  187 + trimmed or unmapped in a single operation. Some storage
  188 + protocols also have inherent limits on the number of
  189 + blocks that can be described in a single command. The
  190 + discard_max_bytes parameter is set by the device driver
  191 + to the maximum number of bytes that can be discarded in
  192 + a single operation. Discard requests issued to the
  193 + device must not exceed this limit. A discard_max_bytes
  194 + value of 0 means that the device does not support
  195 + discard functionality.
  196 +
  197 +What: /sys/block/<disk>/queue/discard_zeroes_data
  198 +Date: May 2011
  199 +Contact: Martin K. Petersen <martin.petersen@oracle.com>
  200 +Description:
  201 + Devices that support discard functionality may return
  202 + stale or random data when a previously discarded block
  203 + is read back. This can cause problems if the filesystem
  204 + expects discarded blocks to be explicitly cleared. If a
  205 + device reports that it deterministically returns zeroes
  206 + when a discarded area is read the discard_zeroes_data
  207 + parameter will be set to one. Otherwise it will be 0 and
  208 + the result of reading a discarded area is undefined.