From: Kent Overstreet Date: Sat, 12 Aug 2023 16:34:47 +0000 (-0400) Subject: bcachefs: Check for directories in deleted inodes btree X-Git-Url: http://git.maquefel.me/?a=commitdiff_plain;h=c036359197705e5b133b30154771c3ebad5698b0;p=linux.git bcachefs: Check for directories in deleted inodes btree Signed-off-by: Kent Overstreet --- diff --git a/fs/bcachefs/inode.c b/fs/bcachefs/inode.c index e0d416553bf0b..46c4012facb0c 100644 --- a/fs/bcachefs/inode.c +++ b/fs/bcachefs/inode.c @@ -1048,6 +1048,11 @@ static int may_delete_deleted_inode(struct btree_trans *trans, struct bpos pos) if (ret) goto err; + if (fsck_err_on(S_ISDIR(inode.bi_mode), c, + "directory %llu:%u in deleted_inodes btree", + pos.offset, pos.snapshot)) + goto delete; + if (fsck_err_on(!(inode.bi_flags & BCH_INODE_UNLINKED), c, "non-deleted inode %llu:%u in deleted_inodes btree", pos.offset, pos.snapshot))