summaryrefslogtreecommitdiff
path: root/fs/bcachefs/inode.c
diff options
context:
space:
mode:
authorKent Overstreet <kent.overstreet@gmail.com>2021-10-11 19:03:19 +0300
committerKent Overstreet <kent.overstreet@linux.dev>2023-10-23 00:09:15 +0300
commit2027875bd8318171159495c948461eae2f84936d (patch)
tree891d2abcd3f50b2bd3bf9b3b60cd325aea5fad66 /fs/bcachefs/inode.c
parentf3b1e1937973624d3bc5f3ba0824e228ae256b88 (diff)
downloadlinux-2027875bd8318171159495c948461eae2f84936d.tar.xz
bcachefs: Add BCH_SUBVOLUME_UNLINKED
Snapshot deletion needs to become a multi step process, where we unlink, then tear down the page cache, then delete the subvolume - the deleting flag is equivalent to an inode with i_nlink = 0. Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
Diffstat (limited to 'fs/bcachefs/inode.c')
-rw-r--r--fs/bcachefs/inode.c6
1 files changed, 1 insertions, 5 deletions
diff --git a/fs/bcachefs/inode.c b/fs/bcachefs/inode.c
index 7fccf842a46b..3ae321a99cee 100644
--- a/fs/bcachefs/inode.c
+++ b/fs/bcachefs/inode.c
@@ -709,11 +709,7 @@ retry:
bch2_inode_unpack(bkey_s_c_to_inode(k), &inode_u);
/* Subvolume root? */
- if (inode_u.bi_subvol) {
- ret = bch2_subvolume_delete(&trans, inode_u.bi_subvol, -1);
- if (ret)
- goto err;
- }
+ BUG_ON(inode_u.bi_subvol);
bkey_inode_generation_init(&delete.k_i);
delete.k.p = iter.pos;