diff options
author | Chris Mason <chris.mason@fusionio.com> | 2012-12-18 15:43:18 -0500 |
---|---|---|
committer | Chris Mason <chris.mason@fusionio.com> | 2012-12-18 15:43:18 -0500 |
commit | 4c3e696981a565aace08678e70c40709a85f9b2b (patch) | |
tree | 30f5c6c00b6fc2691b92446f8af984fbac235c60 /fs/btrfs | |
parent | 213490b301773ea9c6fb89a86424a6901fcdd069 (diff) |
Revert "Btrfs: MOD_LOG_KEY_REMOVE_WHILE_MOVING never change node's nritems"
This reverts commit 95c80bb1f6b24b57058d971ed252b2c1c5121b51.
The bug addressed by this commit was fixed differently back in 3.6
Signed-off-by: Chris Mason <chris.mason@fusionio.com>
Diffstat (limited to 'fs/btrfs')
-rw-r--r-- | fs/btrfs/ctree.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/fs/btrfs/ctree.c b/fs/btrfs/ctree.c index c7b67cf24bba..569c0dfb526c 100644 --- a/fs/btrfs/ctree.c +++ b/fs/btrfs/ctree.c | |||
@@ -1138,13 +1138,13 @@ __tree_mod_log_rewind(struct extent_buffer *eb, u64 time_seq, | |||
1138 | switch (tm->op) { | 1138 | switch (tm->op) { |
1139 | case MOD_LOG_KEY_REMOVE_WHILE_FREEING: | 1139 | case MOD_LOG_KEY_REMOVE_WHILE_FREEING: |
1140 | BUG_ON(tm->slot < n); | 1140 | BUG_ON(tm->slot < n); |
1141 | case MOD_LOG_KEY_REMOVE: | ||
1142 | n++; | ||
1143 | case MOD_LOG_KEY_REMOVE_WHILE_MOVING: | 1141 | case MOD_LOG_KEY_REMOVE_WHILE_MOVING: |
1142 | case MOD_LOG_KEY_REMOVE: | ||
1144 | btrfs_set_node_key(eb, &tm->key, tm->slot); | 1143 | btrfs_set_node_key(eb, &tm->key, tm->slot); |
1145 | btrfs_set_node_blockptr(eb, tm->slot, tm->blockptr); | 1144 | btrfs_set_node_blockptr(eb, tm->slot, tm->blockptr); |
1146 | btrfs_set_node_ptr_generation(eb, tm->slot, | 1145 | btrfs_set_node_ptr_generation(eb, tm->slot, |
1147 | tm->generation); | 1146 | tm->generation); |
1147 | n++; | ||
1148 | break; | 1148 | break; |
1149 | case MOD_LOG_KEY_REPLACE: | 1149 | case MOD_LOG_KEY_REPLACE: |
1150 | BUG_ON(tm->slot >= n); | 1150 | BUG_ON(tm->slot >= n); |