summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristoph Anton Mitterer <mail@christoph.anton.mitterer.name>2015-12-27 03:41:28 +0100
committerDavid Sterba <dsterba@suse.com>2016-01-12 15:01:06 +0100
commitd0ba996f5f0a66d9816876f2d9c939ed2c2bdd32 (patch)
tree241ce5068afcbc3a0b94bf45629dba62c77770cf
parent894c346714e0ba9784b1ccb1e5cbb39f9e2e6245 (diff)
btrfs-progs: document snapshot unaware defrag
In btrfs-filesystem(8), improved the documentation of snapshot unaware defragmentation and included the exact kernel version numbers being affected as well as the possible effects. No longer use the word "unlink" which is easily understood as "deleting a file". Moved the warning more to the beginning of "defragment" subcommand's documentation where it's more visible to readers. Added the same warning to the "autodefrag" option of btrfs-mount(5). Signed-off-by: Christoph Anton Mitterer <mail@christoph.anton.mitterer.name>
-rw-r--r--Documentation/btrfs-filesystem.asciidoc11
-rw-r--r--Documentation/btrfs-mount.asciidoc7
2 files changed, 14 insertions, 4 deletions
diff --git a/Documentation/btrfs-filesystem.asciidoc b/Documentation/btrfs-filesystem.asciidoc
index 31cd51be..600bbac0 100644
--- a/Documentation/btrfs-filesystem.asciidoc
+++ b/Documentation/btrfs-filesystem.asciidoc
@@ -55,6 +55,13 @@ if the free space is too fragmented.
Use 0 to take the kernel default, which is 256kB but may change in the future.
You can also turn on compression in defragment operations.
+
+WARNING: Defragmenting with Linux kernel versions < 3.9 or ≥ 3.14-rc2 as well as
+with Linux stable kernel versions ≥ 3.10.31, ≥ 3.12.12 or ≥ 3.13.4 will break up
+the ref-links of CoW data (for example files copied with `cp --reflink`,
+snapshots or de-duplicated data).
+This may cause considerable increase of space usage depending on the broken up
+ref-links.
++
`Options`
+
-v::::
@@ -79,10 +86,6 @@ target extent size, do not touch extents bigger than <size>
For <start>, <len>, <size> it is possible to append
units designator: \'K', \'M', \'G', \'T', \'P', or \'E', which represent
KiB, MiB, GiB, TiB, PiB, or EiB, respectively. Case does not matter.
-+
-WARNING: defragmenting with kernels up to 2.6.37 will unlink COW-ed copies of data,
-don't use it if you use snapshots, have de-duplicated your data or made
-copies with `cp --reflink`.
*label* [<dev>|<mountpoint>] [<newlabel>]::
Show or update the label of a filesystem.
diff --git a/Documentation/btrfs-mount.asciidoc b/Documentation/btrfs-mount.asciidoc
index 39215a8e..d364594f 100644
--- a/Documentation/btrfs-mount.asciidoc
+++ b/Documentation/btrfs-mount.asciidoc
@@ -26,6 +26,13 @@ MOUNT OPTIONS
Auto defragmentation detects small random writes into files and queue
them up for the defrag process. Works best for small files;
Not well suited for large database workloads.
+ +
+ WARNING: Defragmenting with Linux kernel versions < 3.9 or ≥ 3.14-rc2 as
+ well as with Linux stable kernel versions ≥ 3.10.31, ≥ 3.12.12 or
+ ≥ 3.13.4 will break up the ref-links of CoW data (for example files
+ copied with `cp --reflink`, snapshots or de-duplicated data).
+ This may cause considerable increase of space usage depending on the
+ broken up ref-links.
*check_int*::
*check_int_data*::