diff options
Diffstat (limited to 'fs/ext4/inode.c')
-rw-r--r-- | fs/ext4/inode.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/fs/ext4/inode.c b/fs/ext4/inode.c index 075763474118..7f0e15ebacd9 100644 --- a/fs/ext4/inode.c +++ b/fs/ext4/inode.c | |||
@@ -4598,6 +4598,10 @@ int ext4_setattr(struct dentry *dentry, struct iattr *attr) | |||
4598 | if (attr->ia_size > sbi->s_bitmap_maxbytes) | 4598 | if (attr->ia_size > sbi->s_bitmap_maxbytes) |
4599 | return -EFBIG; | 4599 | return -EFBIG; |
4600 | } | 4600 | } |
4601 | |||
4602 | if (IS_I_VERSION(inode) && attr->ia_size != inode->i_size) | ||
4603 | inode_inc_iversion(inode); | ||
4604 | |||
4601 | if (S_ISREG(inode->i_mode) && | 4605 | if (S_ISREG(inode->i_mode) && |
4602 | (attr->ia_size < inode->i_size)) { | 4606 | (attr->ia_size < inode->i_size)) { |
4603 | if (ext4_should_order_data(inode)) { | 4607 | if (ext4_should_order_data(inode)) { |