Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 4c3e6969 authored by Chris Mason's avatar Chris Mason
Browse files

Revert "Btrfs: MOD_LOG_KEY_REMOVE_WHILE_MOVING never change node's nritems"



This reverts commit 95c80bb1.

The bug addressed by this commit was fixed differently back in 3.6

Signed-off-by: default avatarChris Mason <chris.mason@fusionio.com>
parent 213490b3
Loading
Loading
Loading
Loading
+2 −2
Original line number Original line Diff line number Diff line
@@ -1138,13 +1138,13 @@ __tree_mod_log_rewind(struct extent_buffer *eb, u64 time_seq,
		switch (tm->op) {
		switch (tm->op) {
		case MOD_LOG_KEY_REMOVE_WHILE_FREEING:
		case MOD_LOG_KEY_REMOVE_WHILE_FREEING:
			BUG_ON(tm->slot < n);
			BUG_ON(tm->slot < n);
		case MOD_LOG_KEY_REMOVE:
			n++;
		case MOD_LOG_KEY_REMOVE_WHILE_MOVING:
		case MOD_LOG_KEY_REMOVE_WHILE_MOVING:
		case MOD_LOG_KEY_REMOVE:
			btrfs_set_node_key(eb, &tm->key, tm->slot);
			btrfs_set_node_key(eb, &tm->key, tm->slot);
			btrfs_set_node_blockptr(eb, tm->slot, tm->blockptr);
			btrfs_set_node_blockptr(eb, tm->slot, tm->blockptr);
			btrfs_set_node_ptr_generation(eb, tm->slot,
			btrfs_set_node_ptr_generation(eb, tm->slot,
						      tm->generation);
						      tm->generation);
			n++;
			break;
			break;
		case MOD_LOG_KEY_REPLACE:
		case MOD_LOG_KEY_REPLACE:
			BUG_ON(tm->slot >= n);
			BUG_ON(tm->slot >= n);