]> git.sesse.net Git - bcachefs-tools-debian/commitdiff
Update bcachefs sources to a7694865a3 bcachefs: fsck: Another transaction restart...
authorKent Overstreet <kent.overstreet@gmail.com>
Thu, 18 Aug 2022 22:00:01 +0000 (18:00 -0400)
committerKent Overstreet <kent.overstreet@gmail.com>
Thu, 18 Aug 2022 22:00:01 +0000 (18:00 -0400)
.bcachefs_revision
libbcachefs/fsck.c

index a2dcaa4f82e76f416adf1992aa8f32f24b2f08fc..23636ff3dc6ed526960fb8c4a1632f38cba811a7 100644 (file)
@@ -1 +1 @@
-3421116a6c137a36963cfe93c485f48ccd8802b9
+a7694865a3008d6752370caee2ed3c64c1b0f973
index ff10f09eee5606e17e685aaeb12f0581925151ee..9f768d774ba6d6ab26673adcd414a019ce9e3ed3 100644 (file)
@@ -728,7 +728,7 @@ static int __get_visible_inodes(struct btree_trans *trans,
 
        w->inodes.nr = 0;
 
-       for_each_btree_key(trans, iter, BTREE_ID_inodes, POS(0, inum),
+       for_each_btree_key_norestart(trans, iter, BTREE_ID_inodes, POS(0, inum),
                           BTREE_ITER_ALL_SNAPSHOTS, k, ret) {
                u32 equiv = bch2_snapshot_equiv(c, k.k->p.snapshot);
 
@@ -1372,13 +1372,11 @@ static int check_subdir_count(struct btree_trans *trans, struct inode_walker *w)
                }
        }
 fsck_err:
-       if (ret) {
+       if (ret)
                bch_err(c, "error from check_subdir_count(): %s", bch2_err_str(ret));
-               return ret;
-       }
-       if (trans_was_restarted(trans, restart_count))
-               return -BCH_ERR_transaction_restart_nested;
-       return 0;
+       if (!ret && trans_was_restarted(trans, restart_count))
+               ret = -BCH_ERR_transaction_restart_nested;
+       return ret;
 }
 
 static int check_dirent_target(struct btree_trans *trans,