diff options
Diffstat (limited to 'fs/btrfs/ctree.c')
-rw-r--r-- | fs/btrfs/ctree.c | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/fs/btrfs/ctree.c b/fs/btrfs/ctree.c index c7c48489b963..63147c1315a7 100644 --- a/fs/btrfs/ctree.c +++ b/fs/btrfs/ctree.c | |||
@@ -540,9 +540,8 @@ tree_mod_log_insert_move(struct btrfs_fs_info *fs_info, | |||
540 | int ret; | 540 | int ret; |
541 | int i; | 541 | int i; |
542 | 542 | ||
543 | ret = tree_mod_alloc(fs_info, flags, &tm); | 543 | if (tree_mod_dont_log(fs_info, eb)) |
544 | if (ret <= 0) | 544 | return 0; |
545 | return ret; | ||
546 | 545 | ||
547 | for (i = 0; i + dst_slot < src_slot && i < nr_items; i++) { | 546 | for (i = 0; i + dst_slot < src_slot && i < nr_items; i++) { |
548 | ret = tree_mod_log_insert_key(fs_info, eb, i + dst_slot, | 547 | ret = tree_mod_log_insert_key(fs_info, eb, i + dst_slot, |
@@ -550,6 +549,10 @@ tree_mod_log_insert_move(struct btrfs_fs_info *fs_info, | |||
550 | BUG_ON(ret < 0); | 549 | BUG_ON(ret < 0); |
551 | } | 550 | } |
552 | 551 | ||
552 | ret = tree_mod_alloc(fs_info, flags, &tm); | ||
553 | if (ret <= 0) | ||
554 | return ret; | ||
555 | |||
553 | tm->index = eb->start >> PAGE_CACHE_SHIFT; | 556 | tm->index = eb->start >> PAGE_CACHE_SHIFT; |
554 | tm->slot = src_slot; | 557 | tm->slot = src_slot; |
555 | tm->move.dst_slot = dst_slot; | 558 | tm->move.dst_slot = dst_slot; |
@@ -4548,9 +4551,7 @@ static void del_ptr(struct btrfs_trans_handle *trans, struct btrfs_root *root, | |||
4548 | btrfs_node_key_ptr_offset(slot + 1), | 4551 | btrfs_node_key_ptr_offset(slot + 1), |
4549 | sizeof(struct btrfs_key_ptr) * | 4552 | sizeof(struct btrfs_key_ptr) * |
4550 | (nritems - slot - 1)); | 4553 | (nritems - slot - 1)); |
4551 | } | 4554 | } else if (tree_mod_log && level) { |
4552 | |||
4553 | if (tree_mod_log && level) { | ||
4554 | ret = tree_mod_log_insert_key(root->fs_info, parent, slot, | 4555 | ret = tree_mod_log_insert_key(root->fs_info, parent, slot, |
4555 | MOD_LOG_KEY_REMOVE); | 4556 | MOD_LOG_KEY_REMOVE); |
4556 | BUG_ON(ret < 0); | 4557 | BUG_ON(ret < 0); |