bcachefs: Inode updates should generally be BTREE_INSERT_NOFAIL

This fixes a bug where i_size may become inconsistent between the VFS
cache and the btree, when the filesystem is nearly full.

Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
This commit is contained in:
Kent Overstreet 2021-11-09 17:20:06 -05:00 committed by Kent Overstreet
parent 74163da7c8
commit 770e821485

View File

@ -347,7 +347,8 @@ s64 bch2_remap_range(struct bch_fs *c,
inode_u.bi_size < new_i_size) {
inode_u.bi_size = new_i_size;
ret2 = bch2_inode_write(&trans, &inode_iter, &inode_u) ?:
bch2_trans_commit(&trans, NULL, NULL, 0);
bch2_trans_commit(&trans, NULL, NULL,
BTREE_INSERT_NOFAIL);
}
bch2_trans_iter_exit(&trans, &inode_iter);