From e296b1f9cadfc4ee7ebe5933fb98497263ce9999 Mon Sep 17 00:00:00 2001 From: Kent Overstreet Date: Mon, 11 Apr 2022 22:36:13 -0400 Subject: [PATCH] bcachefs: Fix inode_backpointer_exists() If the dirent an inode points to doesn't exist, we shouldn't be returning an error - just 0/false. Signed-off-by: Kent Overstreet --- fs/bcachefs/fsck.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fs/bcachefs/fsck.c b/fs/bcachefs/fsck.c index 6a89b0694e50..ccbf3ac4b1d6 100644 --- a/fs/bcachefs/fsck.c +++ b/fs/bcachefs/fsck.c @@ -1092,7 +1092,7 @@ static int inode_backpointer_exists(struct btree_trans *trans, SPOS(inode->bi_dir, inode->bi_dir_offset, snapshot)); ret = bkey_err(d.s_c); if (ret) - return ret; + return ret == -ENOENT ? 0 : ret; ret = dirent_points_to_inode(d, inode); bch2_trans_iter_exit(trans, &iter); -- 2.25.1