@@ -13,7 +13,7 @@ in meeting your performance expectations for your specific workload.
1313Combination of features can vary in performance, the table does not
1414cover all possibilities.
1515
16- **The table is based on the latest released linux kernel: 6.3 **
16+ **The table is based on the latest released linux kernel: 6.4 **
1717
1818The columns for each feature reflect the status of the implementation
1919in following ways:
@@ -32,7 +32,9 @@ in following ways:
3232
3333.. role :: statusok
3434.. role :: statusmok
35- .. role :: statusunst
35+ .. role :: statusunstable
36+ .. role :: statusunsupp
37+ .. role :: statusincompat
3638
3739.. list-table ::
3840 :header-rows: 1
@@ -126,7 +128,7 @@ in following ways:
126128 - mostly OK
127129 - reading from mirrors in parallel can be optimized further (see below)
128130 * - :ref: `RAID56<mkfs-section-profiles> `
129- - :statusunst : `unstable `
131+ - :statusunstable : `unstable `
130132 - n/a
131133 - (see below)
132134 * - Mixed block groups
@@ -220,11 +222,12 @@ in following ways:
220222 * - :doc: `Subpage block size<Subpage> `
221223 - :statusmok: `mostly OK `
222224 - mostly OK
223- -
225+ - Also see table below for more detailed compatibility.
224226 * - :doc: `Zoned mode<Zoned-mode> `
225227 - :statusmok: `mostly OK `
226228 - mostly OK
227- - there are known bugs, use only for testing
229+ - Not yet feature complete but moderately stable, also see table below
230+ for more detailed compatibility.
228231
229232Please open an issue if:
230233
@@ -233,6 +236,8 @@ Please open an issue if:
233236 worth mentioning separately
234237- you know of a bug that lowers the feature status
235238
239+ .. _status-subpage-block-size :
240+
236241Subpage block size
237242------------------
238243
@@ -247,55 +252,84 @@ with subpage or require another feature to work:
247252 - Status
248253 - Notes
249254 * - Inline files
250- - unsupported
251- - The max_inline mount option value is ignored
255+ - :statusunsupp: ` unsupported `
256+ - The max_inline mount option value is ignored, as if mounted with max_inline=0
252257 * - Free space cache v1
253- - unsupported
254- - Free space tree is mandatory
258+ - :statusunsupp: ` unsupported `
259+ - Free space tree is mandatory, v1 has some assumptions about page size
255260 * - Compression
256- - partial support
261+ - :statusok: ` partial support `
257262 - Only page-aligned ranges can be compressed
263+ * - Sectorsize
264+ - :statusok: `supported `
265+ - The list of supported sector sizes on a given version can be found
266+ in file :file: `/sys/fs/btrfs/features/supported_sectorsizes `
258267
259268
260269Zoned mode
261270----------
262271
272+ Features that completely incompatible with zoned mode are listed below.
273+ Compatible features may not be listed and are assumed to work as they
274+ are unaffected by the zoned device constraints.
275+
263276.. list-table ::
264277 :header-rows: 1
265278
266279 * - Feature
267280 - Status
268281 - Notes
269282 * - Boot
270- - incompatible
283+ - :statusincompat: ` incompatible `
271284 - The blocks where partition table is stored is used for super block
272285 * - Mixed block groups
273- - incompatible
286+ - :statusincompat: ` incompatible `
274287 - Interleaving data and metadata would lead to out of order write
275288 * - NODATACOW
276- - incompatible
289+ - :statusincompat: ` incompatible `
277290 - In-place overwrite
278291 * - fallocate
279- - incompatible
292+ - :statusincompat: ` incompatible `
280293 - Preallocation of blocks would require an out of order write
281294 * - Free space cache v1
282- - incompatible
295+ - :statusincompat: ` incompatible `
283296 - Cache data are updated in a NODATACOW-way
297+ * - Swapfile
298+ - :statusincompat: `incompatible `
299+ - Swap blocks are written out of order
300+ * - Offline UUID change
301+ - :statusincompat: `incompatible `
302+ - Metadata blocks are updated in-place
284303 * - Free space tree
285- - supported
304+ - :statusok: ` supported `
286305 -
287- * - fstrim
288- - not implemented
289- - This would require free space v1
290306 * - single profile
291- - supported
307+ - :statusok: ` supported `
292308 - Both data and metadata
293309 * - DUP profile
294- - partial support
310+ - :statusok: ` partial support `
295311 - Only for metadata
312+ * - Filesystem resize
313+ - :statusok: `supported `
314+ -
315+ * - Balance
316+ - :statusok: `supported `
317+ -
318+ * - Metadata UUID change
319+ - :statusok: `supported `
320+ -
296321 * - RAID (all)
297322 - not implemented
298323 - This requires raid-stripe-tree feature which is still work in progress
324+ * - discard
325+ - not implemented
326+ - May not be required at all due to automatic zone reclaim
327+ * - fsverity
328+ - TBD
329+ -
330+ * - seeding
331+ - TBD
332+ -
299333
300334
301335Details that do not fit the table
0 commit comments