summaryrefslogtreecommitdiff
path: root/libbcachefs/btree_iter.c
diff options
context:
space:
mode:
authorKent Overstreet <kent.overstreet@gmail.com>2018-11-23 03:04:34 -0500
committerKent Overstreet <kent.overstreet@gmail.com>2018-11-23 03:05:20 -0500
commitbca8b084ad754afc54e628d9db7721b90d9480b7 (patch)
treea7e1afcc7026f8ca12f6d18868cb8fc9bb100e80 /libbcachefs/btree_iter.c
parentc416528eaab6c8cd255e63a1505d4e348ff18b6e (diff)
Update bcachefs sources to da7fefde29 bcachefs: shim for userspace raid library
Diffstat (limited to 'libbcachefs/btree_iter.c')
-rw-r--r--libbcachefs/btree_iter.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/libbcachefs/btree_iter.c b/libbcachefs/btree_iter.c
index 1eae181d..ae1d4f85 100644
--- a/libbcachefs/btree_iter.c
+++ b/libbcachefs/btree_iter.c
@@ -817,7 +817,7 @@ static inline int btree_iter_lock_root(struct btree_iter *iter,
*/
iter->level = depth_want;
iter->l[iter->level].b = NULL;
- return 0;
+ return 1;
}
lock_type = __btree_lock_want(iter, iter->level);
@@ -1044,6 +1044,9 @@ int __must_check __bch2_btree_iter_traverse(struct btree_iter *iter)
? btree_iter_down(iter)
: btree_iter_lock_root(iter, depth_want);
if (unlikely(ret)) {
+ if (ret == 1)
+ return 0;
+
iter->level = depth_want;
iter->l[iter->level].b = BTREE_ITER_NOT_END;
return ret;