btrfs: ctree: Reduce one indent level for btrfs_search_old_slot()

Similar to btrfs_search_slot() done in previous patch, make a shortcut
for the level 0 case and allow to reduce indentation for the remaining
case.

Reviewed-by: Anand Jain <anand.jain@oracle.com>
Signed-off-by: Qu Wenruo <wqu@suse.com>
Reviewed-by: David Sterba <dsterba@suse.com>
[ update changelog ]
Signed-off-by: David Sterba <dsterba@suse.com>
This commit is contained in:
Qu Wenruo
2019-09-10 15:40:18 +08:00
committed by David Sterba
parent f624d97608
commit abe9339d69

View File

@@ -3005,6 +3005,8 @@ again:
p->locks[level] = BTRFS_READ_LOCK; p->locks[level] = BTRFS_READ_LOCK;
while (b) { while (b) {
int dec = 0;
level = btrfs_header_level(b); level = btrfs_header_level(b);
p->nodes[level] = b; p->nodes[level] = b;
@@ -3025,11 +3027,15 @@ again:
if (ret < 0) if (ret < 0)
goto done; goto done;
if (level != 0) { if (level == 0) {
int dec = 0; p->slots[level] = slot;
unlock_up(p, level, lowest_unlock, 0, NULL);
goto done;
}
if (ret && slot > 0) { if (ret && slot > 0) {
dec = 1; dec = 1;
slot -= 1; slot--;
} }
p->slots[level] = slot; p->slots[level] = slot;
unlock_up(p, level, lowest_unlock, 0, NULL); unlock_up(p, level, lowest_unlock, 0, NULL);
@@ -3040,8 +3046,7 @@ again:
goto done; goto done;
} }
err = read_block_for_search(root, p, &b, level, err = read_block_for_search(root, p, &b, level, slot, key);
slot, key);
if (err == -EAGAIN) if (err == -EAGAIN)
goto again; goto again;
if (err) { if (err) {
@@ -3061,11 +3066,6 @@ again:
} }
p->locks[level] = BTRFS_READ_LOCK; p->locks[level] = BTRFS_READ_LOCK;
p->nodes[level] = b; p->nodes[level] = b;
} else {
p->slots[level] = slot;
unlock_up(p, level, lowest_unlock, 0, NULL);
goto done;
}
} }
ret = 1; ret = 1;
done: done: