diff options
| author | Linus Torvalds <torvalds@linux-foundation.org> | 2012-12-20 18:14:31 -0800 | 
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2012-12-20 18:14:31 -0800 | 
| commit | 1f0377ff088ed2971c57debc9b0c3b846ec431fd (patch) | |
| tree | cd53c8981269e57e38e4285abd71cc990e1cfc67 /fs/jfs/file.c | |
| parent | 54d46ea993744c5408e39ce0cb4851e13cbea716 (diff) | |
| parent | b729d75d19777a5dd34672020516eada43ff026f (diff) | |
| download | olio-linux-3.10-1f0377ff088ed2971c57debc9b0c3b846ec431fd.tar.xz olio-linux-3.10-1f0377ff088ed2971c57debc9b0c3b846ec431fd.zip  | |
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs
Pull VFS update from Al Viro:
 "fscache fixes, ESTALE patchset, vmtruncate removal series, assorted
  misc stuff."
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: (79 commits)
  vfs: make lremovexattr retry once on ESTALE error
  vfs: make removexattr retry once on ESTALE
  vfs: make llistxattr retry once on ESTALE error
  vfs: make listxattr retry once on ESTALE error
  vfs: make lgetxattr retry once on ESTALE
  vfs: make getxattr retry once on an ESTALE error
  vfs: allow lsetxattr() to retry once on ESTALE errors
  vfs: allow setxattr to retry once on ESTALE errors
  vfs: allow utimensat() calls to retry once on an ESTALE error
  vfs: fix user_statfs to retry once on ESTALE errors
  vfs: make fchownat retry once on ESTALE errors
  vfs: make fchmodat retry once on ESTALE errors
  vfs: have chroot retry once on ESTALE error
  vfs: have chdir retry lookup and call once on ESTALE error
  vfs: have faccessat retry once on an ESTALE error
  vfs: have do_sys_truncate retry once on an ESTALE error
  vfs: fix renameat to retry on ESTALE errors
  vfs: make do_unlinkat retry once on ESTALE errors
  vfs: make do_rmdir retry once on ESTALE errors
  vfs: add a flags argument to user_path_parent
  ...
Diffstat (limited to 'fs/jfs/file.c')
| -rw-r--r-- | fs/jfs/file.c | 6 | 
1 files changed, 4 insertions, 2 deletions
diff --git a/fs/jfs/file.c b/fs/jfs/file.c index 9d3afd157f9..dd7442c5835 100644 --- a/fs/jfs/file.c +++ b/fs/jfs/file.c @@ -119,9 +119,12 @@ int jfs_setattr(struct dentry *dentry, struct iattr *iattr)  	    iattr->ia_size != i_size_read(inode)) {  		inode_dio_wait(inode); -		rc = vmtruncate(inode, iattr->ia_size); +		rc = inode_newsize_ok(inode, iattr->ia_size);  		if (rc)  			return rc; + +		truncate_setsize(inode, iattr->ia_size); +		jfs_truncate(inode);  	}  	setattr_copy(inode, iattr); @@ -133,7 +136,6 @@ int jfs_setattr(struct dentry *dentry, struct iattr *iattr)  }  const struct inode_operations jfs_file_inode_operations = { -	.truncate	= jfs_truncate,  	.setxattr	= jfs_setxattr,  	.getxattr	= jfs_getxattr,  	.listxattr	= jfs_listxattr,  |