Removed vmtruncate.
Signed-off-by: Marco Stornelli <[email protected]>
---
fs/adfs/inode.c | 5 +++--
1 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/fs/adfs/inode.c b/fs/adfs/inode.c
index e9bad50..81de375 100644
--- a/fs/adfs/inode.c
+++ b/fs/adfs/inode.c
@@ -57,8 +57,9 @@ static int adfs_write_begin(struct file *file, struct address_space *mapping,
&ADFS_I(mapping->host)->mmu_private);
if (unlikely(ret)) {
loff_t isize = mapping->host->i_size;
- if (pos + len > isize)
- vmtruncate(mapping->host, isize);
+ if ((pos + len > isize) &&
+ inode_newsize_ok(mapping->host, isize) == 0)
+ truncate_setsize(mapping->host, isize);
}
return ret;
--
1.7.3.4
> @@ -57,8 +57,9 @@ static int adfs_write_begin(struct file *file, struct address_space *mapping,
> &ADFS_I(mapping->host)->mmu_private);
> if (unlikely(ret)) {
> loff_t isize = mapping->host->i_size;
> - if (pos + len > isize)
> - vmtruncate(mapping->host, isize);
> + if ((pos + len > isize) &&
> + inode_newsize_ok(mapping->host, isize) == 0)
> + truncate_setsize(mapping->host, isize);
No need for the inode_newsize_ok check here.