| From | Greg Kroah-Hartman <> | Subject | [PATCH 5.7 142/204] f2fs: compress: fix to update isize when overwriting compressed file | Date | Thu, 20 Aug 2020 11:20:39 +0200 |
| |
From: Chao Yu <yuchao0@huawei.com>
[ Upstream commit 944dd22ea4475bd11180fd2f431a4a547ca4d8f5 ]
We missed to update isize of compressed file in write_end() with below case:
cluster size is 16KB
- write 14KB data from offset 0 - overwrite 16KB data from offset 0
Fixes: 4c8ff7095bef ("f2fs: support data compression") Signed-off-by: Chao Yu <yuchao0@huawei.com> Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org> Signed-off-by: Sasha Levin <sashal@kernel.org> --- fs/f2fs/data.c | 4 ++++ 1 file changed, 4 insertions(+)
diff --git a/fs/f2fs/data.c b/fs/f2fs/data.c index 10491ae1cb850..329afa55a581c 100644 --- a/fs/f2fs/data.c +++ b/fs/f2fs/data.c @@ -3353,6 +3353,10 @@ static int f2fs_write_end(struct file *file, if (f2fs_compressed_file(inode) && fsdata) { f2fs_compress_write_end(inode, fsdata, page->index, copied); f2fs_update_time(F2FS_I_SB(inode), REQ_TIME); + + if (pos + copied > i_size_read(inode) && + !f2fs_verity_in_progress(inode)) + f2fs_i_size_write(inode, pos + copied); return copied; } #endif -- 2.25.1
|