Commit 23b5c509 authored by Aneesh Kumar K.V's avatar Aneesh Kumar K.V Committed by Chris Mason

Btrfs: apply updated fallocate i_size fix

This version of the i_size fix for fallocate makes sure we only update
the i_size when the current fallocate is really operating outside of
i_size.
Signed-off-by: default avatarChris Mason <chris.mason@oracle.com>
parent efd049fb
...@@ -5799,7 +5799,9 @@ static int prealloc_file_range(struct inode *inode, u64 start, u64 end, ...@@ -5799,7 +5799,9 @@ static int prealloc_file_range(struct inode *inode, u64 start, u64 end,
inode->i_ctime = CURRENT_TIME; inode->i_ctime = CURRENT_TIME;
BTRFS_I(inode)->flags |= BTRFS_INODE_PREALLOC; BTRFS_I(inode)->flags |= BTRFS_INODE_PREALLOC;
if (!(mode & FALLOC_FL_KEEP_SIZE) && if (!(mode & FALLOC_FL_KEEP_SIZE) &&
cur_offset > inode->i_size) { (actual_len > inode->i_size) &&
(cur_offset > inode->i_size)) {
if (cur_offset > actual_len) if (cur_offset > actual_len)
i_size = actual_len; i_size = actual_len;
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