diff options
author | npiggin@suse.de <npiggin@suse.de> | 2010-05-27 01:05:34 +1000 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2010-05-27 22:15:42 -0400 |
commit | 15c6fd9786dfaab43547bf60df6fa63170fb64fc (patch) | |
tree | afd997b3402761e28b6c39f414fbd93c69fdcdce /fs/ocfs2/file.c | |
parent | 7bb46a6734a7e1ad4beaecc11cae7ed3ff81d30f (diff) | |
download | kernel_samsung_aries-15c6fd9786dfaab43547bf60df6fa63170fb64fc.zip kernel_samsung_aries-15c6fd9786dfaab43547bf60df6fa63170fb64fc.tar.gz kernel_samsung_aries-15c6fd9786dfaab43547bf60df6fa63170fb64fc.tar.bz2 |
kill spurious reference to vmtruncate
Lots of filesystems calls vmtruncate despite not implementing the old
->truncate method. Switch them to use simple_setsize and add some
comments about the truncate code where it seems fitting.
Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Nick Piggin <npiggin@suse.de>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'fs/ocfs2/file.c')
-rw-r--r-- | fs/ocfs2/file.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/fs/ocfs2/file.c b/fs/ocfs2/file.c index 1c6220a..6a13ea6 100644 --- a/fs/ocfs2/file.c +++ b/fs/ocfs2/file.c @@ -1052,7 +1052,7 @@ int ocfs2_setattr(struct dentry *dentry, struct iattr *attr) } /* - * This will intentionally not wind up calling vmtruncate(), + * This will intentionally not wind up calling simple_setsize(), * since all the work for a size change has been done above. * Otherwise, we could get into problems with truncate as * ip_alloc_sem is used there to protect against i_size @@ -2118,9 +2118,13 @@ relock: * direct write may have instantiated a few * blocks outside i_size. Trim these off again. * Don't need i_size_read because we hold i_mutex. + * + * XXX(hch): this looks buggy because ocfs2 did not + * actually implement ->truncate. Take a look at + * the new truncate sequence and update this accordingly */ if (*ppos + count > inode->i_size) - vmtruncate(inode, inode->i_size); + simple_setsize(inode, inode->i_size); ret = written; goto out_dio; } |