diff options
author | Lu Fengqi <lufq.fnst@cn.fujitsu.com> | 2016-04-24 15:47:12 +0800 |
---|---|---|
committer | David Sterba <dsterba@suse.com> | 2016-08-17 19:04:51 +0200 |
commit | bfecd8bd6aafd3be183506e4a351d412f39fc2bc (patch) | |
tree | 58247a650c41186195d1498ec6e3610434361710 /Documentation/btrfs-check.asciidoc | |
parent | dad817d3bad44619c355d11e39512b413da6939c (diff) |
btrfs-progs: check: introduce low memory mode
Introduce a new fsck mode: low memory mode.
Old btrfsck is working efficiently but uses some memory for each extent
item. This method will ensure extents are only iterated once at
extent/chunk tree check process.
But since it uses some memory for each extent item, for a large fs with
several TB metadata, this can easily eat up memory and cause OOM.
To handle such limitation and improve scalability, the new low-memory
mode will not use any heap memory to record which extent is checked.
Instead it will use extent backref to avoid most of uneeded checks on
shared fs/subvolume tree blocks.
And with the use forward and backward reference cross check, we can also
ensure every tree block is at least checked once.
Signed-off-by: Lu Fengqi <lufq.fnst@cn.fujitsu.com>
Signed-off-by: Qu Wenruo <quwenruo@cn.fujitsu.com>
Reviewed-by: Josef Bacik <jbacik@fb.com>
Signed-off-by: David Sterba <dsterba@suse.com>
Diffstat (limited to 'Documentation/btrfs-check.asciidoc')
-rw-r--r-- | Documentation/btrfs-check.asciidoc | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/Documentation/btrfs-check.asciidoc b/Documentation/btrfs-check.asciidoc index 74a2ad21..4e27863e 100644 --- a/Documentation/btrfs-check.asciidoc +++ b/Documentation/btrfs-check.asciidoc @@ -93,6 +93,12 @@ build the extent tree from scratch + NOTE: Do not use unless you know what you're doing. +--low-memory:: +check fs in low memory usage mode(experimental) +May takes longer time than normal check. ++ +NOTE: Doesn't work with '--repair' option yet. + EXIT STATUS ----------- *btrfs check* returns a zero exit status if it succeeds. Non zero is |