Commit b02f973e authored by Kent Overstreet's avatar Kent Overstreet

bcachefs: Fix bch2_inode_insert() race path for tmpfiles

Signed-off-by: default avatarKent Overstreet <kent.overstreet@linux.dev>
parent 29f1c1ae
...@@ -194,6 +194,12 @@ static struct bch_inode_info *bch2_inode_insert(struct bch_fs *c, struct bch_ino ...@@ -194,6 +194,12 @@ static struct bch_inode_info *bch2_inode_insert(struct bch_fs *c, struct bch_ino
* discard_new_inode() expects it to be set... * discard_new_inode() expects it to be set...
*/ */
inode->v.i_flags |= I_NEW; inode->v.i_flags |= I_NEW;
/*
* We don't want bch2_evict_inode() to delete the inode on disk,
* we just raced and had another inode in cache. Normally new
* inodes don't have nlink == 0 - except tmpfiles do...
*/
set_nlink(&inode->v, 1);
discard_new_inode(&inode->v); discard_new_inode(&inode->v);
inode = old; inode = old;
} else { } else {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment