Commit 20826fe6 authored by Kent Overstreet's avatar Kent Overstreet
Browse files

bcachefs: Fix reattach_inode()



Ensure a copy of the lost+found inode exists in the snapshot that we're
reattaching, so that we don't trigger warnings in
lookup_inode_for_snapshot() later.

Signed-off-by: default avatarKent Overstreet <kent.overstreet@linux.dev>
parent 6b63a948
Loading
Loading
Loading
Loading
+5 −6
Original line number Diff line number Diff line
@@ -354,13 +354,12 @@ static int reattach_inode(struct btree_trans *trans,
	if (ret)
		return ret;

	if (S_ISDIR(inode->bi_mode)) {
		lostfound.bi_nlink++;
	lostfound.bi_nlink += S_ISDIR(inode->bi_mode);

		ret = __bch2_fsck_write_inode(trans, &lostfound, U32_MAX);
	/* ensure lost+found inode is also present in inode snapshot */
	ret = __bch2_fsck_write_inode(trans, &lostfound, inode_snapshot);
	if (ret)
		return ret;
	}

	dir_hash = bch2_hash_info_init(c, &lostfound);