diff options
Diffstat (limited to 'fs/ext3/inode.c')
-rw-r--r-- | fs/ext3/inode.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/fs/ext3/inode.c b/fs/ext3/inode.c index 3451d23c3bae..99c28b246b89 100644 --- a/fs/ext3/inode.c +++ b/fs/ext3/inode.c | |||
@@ -3216,6 +3216,9 @@ int ext3_setattr(struct dentry *dentry, struct iattr *attr) | |||
3216 | ext3_journal_stop(handle); | 3216 | ext3_journal_stop(handle); |
3217 | } | 3217 | } |
3218 | 3218 | ||
3219 | if (attr->ia_valid & ATTR_SIZE) | ||
3220 | inode_dio_wait(inode); | ||
3221 | |||
3219 | if (S_ISREG(inode->i_mode) && | 3222 | if (S_ISREG(inode->i_mode) && |
3220 | attr->ia_valid & ATTR_SIZE && attr->ia_size < inode->i_size) { | 3223 | attr->ia_valid & ATTR_SIZE && attr->ia_size < inode->i_size) { |
3221 | handle_t *handle; | 3224 | handle_t *handle; |