btrfs-progs/check
Nikolay Borisov 909357e867 btrfs-progs: Wire up delayed refs
This commit enables the delayed refs infrastructures. This entails doing
the following:

1. Replacing existing calls of btrfs_extent_post_op (which is the
   equivalent of delayed refs) with the proper btrfs_run_delayed_refs.
   As well as eliminating open-coded calls to finish_current_insert and
   del_pending_extents which execute the delayed ops.

2. Wiring up the addition of delayed refs when freeing extents
   (btrfs_free_extent) and when adding new extents (alloc_tree_block).

3. Adding calls to btrfs_run_delayed refs in the transaction commit
   path alongside comments why every call is needed, since it's not
   always obvious (those call sites were derived empirically by running
   and debugging existing tests)

4. Correctly flagging the transaction in which we are reinitialising
   the extent tree.

5. Moving btrfs_write_dirty_block_groups to
   btrfs_write_dirty_block_groups since blockgroups should be written to
   disk after the last delayed refs have been run.

Signed-off-by: Nikolay Borisov <nborisov@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
2018-10-23 14:48:41 +02:00
..
main.c btrfs-progs: Wire up delayed refs 2018-10-23 14:48:41 +02:00
mode-common.c btrfs-progs: check: Initialize all filed of btrfs_inode_item in insert_inode_item() 2018-06-07 16:37:40 +02:00
mode-common.h btrfs-progs: check: enhanced progress indicator 2018-08-06 15:03:23 +02:00
mode-lowmem.c btrfs-progs: check: enhanced progress indicator 2018-08-06 15:03:23 +02:00
mode-lowmem.h btrfs-progs: check: lowmem: check symlinks with append/immutable flags 2018-06-07 16:37:38 +02:00
mode-original.h btrfs-progs: check/original: Detect and repair wrong inline ram_bytes 2018-08-06 15:00:44 +02:00