From daf3fe502a4c20be99579097cc351e91d27fc789 Mon Sep 17 00:00:00 2001 From: Kent Overstreet Date: Wed, 9 Oct 2019 09:44:36 -0400 Subject: bcachefs: Check if extending inode differently In bch2_extent_update(), we have to update the inode if i_size is changing (the file is being extend) or if i_sectors is changing, but we want to avoid touching the inode if it's not necessary. Change sum_sector_overwrites() to also check if there's already data above where we're writing to - this means we're definitely not extending the file. Signed-off-by: Kent Overstreet --- fs/bcachefs/fs-io.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'fs/bcachefs/fs-io.h') diff --git a/fs/bcachefs/fs-io.h b/fs/bcachefs/fs-io.h index 861ec25ab9ef..5e48d21bd2e4 100644 --- a/fs/bcachefs/fs-io.h +++ b/fs/bcachefs/fs-io.h @@ -19,7 +19,7 @@ int bch2_extent_update(struct btree_trans *, struct bkey_i *, u64, bool, bool, s64 *); int bch2_fpunch_at(struct btree_trans *, struct btree_iter *, - struct bpos, struct bch_inode_info *, u64); + struct bpos, struct bch_inode_info *); int __must_check bch2_write_inode_size(struct bch_fs *, struct bch_inode_info *, -- cgit v1.2.3