Add documentation for the discard I/O topology parameters exported in sysfs.
Unified · Split
| @@ -142,3 +142,67 @@ Description: · 141 unmodified lines | ||
| 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. | |