aboutsummaryrefslogtreecommitdiffstats
path: root/fs/btrfs/tree-log.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2016-10-11 14:23:06 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2016-10-11 14:23:06 -0400
commitf29135b54bcbfe1fea97d94e2ae860bade1d5a31 (patch)
treecd6cf1887c689b0fdd802bb8f16d3253adbc54c0 /fs/btrfs/tree-log.c
parent4c609922a3ae0248597785d1f9adc8f142a80aef (diff)
parent19c4d2f994788a954af1aa7e53b0fdb46fd7925a (diff)
Merge branch 'for-linus-4.9' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs
Pull btrfs updates from Chris Mason: "This is a big variety of fixes and cleanups. Liu Bo continues to fixup fuzzer related problems, and some of Josef's cleanups are prep for his bigger extent buffer changes (slated for v4.10)" * 'for-linus-4.9' of git://git.kernel.org/pub/scm/linux/kernel/git/mason/linux-btrfs: (39 commits) Revert "btrfs: let btrfs_delete_unused_bgs() to clean relocated bgs" Btrfs: remove unnecessary btrfs_mark_buffer_dirty in split_leaf Btrfs: don't BUG() during drop snapshot btrfs: fix btrfs_no_printk stub helper Btrfs: memset to avoid stale content in btree leaf btrfs: parent_start initialization cleanup btrfs: Remove already completed TODO comment btrfs: Do not reassign count in btrfs_run_delayed_refs btrfs: fix a possible umount deadlock Btrfs: fix memory leak in do_walk_down btrfs: btrfs_debug should consume fs_info when DEBUG is not defined btrfs: convert send's verbose_printk to btrfs_debug btrfs: convert pr_* to btrfs_* where possible btrfs: convert printk(KERN_* to use pr_* calls btrfs: unsplit printed strings btrfs: clean the old superblocks before freeing the device Btrfs: kill BUG_ON in run_delayed_tree_ref Btrfs: don't leak reloc root nodes on error btrfs: squash lines for simple wrapper functions Btrfs: improve check_node to avoid reading corrupted nodes ...
Diffstat (limited to 'fs/btrfs/tree-log.c')
-rw-r--r--fs/btrfs/tree-log.c12
1 files changed, 6 insertions, 6 deletions
diff --git a/fs/btrfs/tree-log.c b/fs/btrfs/tree-log.c
index 8a84ebd8e7cc..528cae123dc9 100644
--- a/fs/btrfs/tree-log.c
+++ b/fs/btrfs/tree-log.c
@@ -5579,7 +5579,7 @@ int btrfs_recover_log_trees(struct btrfs_root *log_root_tree)
5579 if (!path) 5579 if (!path)
5580 return -ENOMEM; 5580 return -ENOMEM;
5581 5581
5582 fs_info->log_root_recovering = 1; 5582 set_bit(BTRFS_FS_LOG_RECOVERING, &fs_info->flags);
5583 5583
5584 trans = btrfs_start_transaction(fs_info->tree_root, 0); 5584 trans = btrfs_start_transaction(fs_info->tree_root, 0);
5585 if (IS_ERR(trans)) { 5585 if (IS_ERR(trans)) {
@@ -5592,8 +5592,8 @@ int btrfs_recover_log_trees(struct btrfs_root *log_root_tree)
5592 5592
5593 ret = walk_log_tree(trans, log_root_tree, &wc); 5593 ret = walk_log_tree(trans, log_root_tree, &wc);
5594 if (ret) { 5594 if (ret) {
5595 btrfs_handle_fs_error(fs_info, ret, "Failed to pin buffers while " 5595 btrfs_handle_fs_error(fs_info, ret,
5596 "recovering log root tree."); 5596 "Failed to pin buffers while recovering log root tree.");
5597 goto error; 5597 goto error;
5598 } 5598 }
5599 5599
@@ -5639,8 +5639,8 @@ again:
5639 free_extent_buffer(log->node); 5639 free_extent_buffer(log->node);
5640 free_extent_buffer(log->commit_root); 5640 free_extent_buffer(log->commit_root);
5641 kfree(log); 5641 kfree(log);
5642 btrfs_handle_fs_error(fs_info, ret, "Couldn't read target root " 5642 btrfs_handle_fs_error(fs_info, ret,
5643 "for tree log recovery."); 5643 "Couldn't read target root for tree log recovery.");
5644 goto error; 5644 goto error;
5645 } 5645 }
5646 5646
@@ -5689,7 +5689,7 @@ again:
5689 5689
5690 free_extent_buffer(log_root_tree->node); 5690 free_extent_buffer(log_root_tree->node);
5691 log_root_tree->log_root = NULL; 5691 log_root_tree->log_root = NULL;
5692 fs_info->log_root_recovering = 0; 5692 clear_bit(BTRFS_FS_LOG_RECOVERING, &fs_info->flags);
5693 kfree(log_root_tree); 5693 kfree(log_root_tree);
5694 5694
5695 return 0; 5695 return 0;