mirror of
https://github.com/Fishwaldo/Star64_linux.git
synced 2025-05-09 08:43:46 +00:00
f2fs: fix to avoid overflow when left shifting page offset
We use following method to calculate size with current page index: size = index << PAGE_SHIFT If type of index has only 32-bits size, left shifting will incur overflow, which makes result incorrect. So let's cast index with 64-bits type to avoid such issue. Signed-off-by: Chao Yu <yuchao0@huawei.com> Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
This commit is contained in:
parent
ba38c27eb9
commit
dba79f38bc
1 changed files with 3 additions and 2 deletions
|
@ -428,8 +428,9 @@ retry_dn:
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!file_keep_isize(inode) &&
|
if (!file_keep_isize(inode) &&
|
||||||
(i_size_read(inode) <= (start << PAGE_SHIFT)))
|
(i_size_read(inode) <= ((loff_t)start << PAGE_SHIFT)))
|
||||||
f2fs_i_size_write(inode, (start + 1) << PAGE_SHIFT);
|
f2fs_i_size_write(inode,
|
||||||
|
(loff_t)(start + 1) << PAGE_SHIFT);
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* dest is reserved block, invalidate src block
|
* dest is reserved block, invalidate src block
|
||||||
|
|
Loading…
Add table
Reference in a new issue