From: Sankar P <psankar@novell.com>
Subject: novfs: Fixes corruption of OO documents on NSS Volumes
References: bnc#508259
Patch-mainline: no

OpenOffice documents stored in NSS volumes, when accessed
via NOVFS, get corrupted while using the ftruncate64 call.

Removed stale code which unsets the size in the setattr call.

Signed-off-by: Sankar P <psankar@novell.com>
Acked-by: Jan Kara <jack@suse.cz>

---
 fs/novfs/inode.c |   25 -------------------------
 1 file changed, 25 deletions(-)

--- a/fs/novfs/inode.c
+++ b/fs/novfs/inode.c
@@ -3183,7 +3183,6 @@ int novfs_i_setattr(struct dentry *dentr
 	unsigned int ia_valid = attr->ia_valid;
 	struct novfs_schandle session;
 	int retVal = 0;
-	struct iattr mattr;
 
 	if (IS_ROOT(dentry) ||	/* Root */
 	    IS_ROOT(dentry->d_parent) ||	/* User */
@@ -3241,30 +3240,6 @@ int novfs_i_setattr(struct dentry *dentr
 					 attr->ia_size,
 					 atime_buf, mtime_buf, ctime_buf);
 
-				if ((attr->ia_valid & ATTR_FILE)
-				    && (attr->ia_valid & ATTR_SIZE)) {
-					memcpy(&mattr, attr, sizeof(mattr));
-					mattr.ia_valid &=
-					    ~(ATTR_FILE | ATTR_SIZE);
-					attr = &mattr;
-					ia_valid = attr->ia_valid;
-#if 0   // thanks to vfs changes in our tree...
-					retVal =
-					    novfs_trunc_ex(attr->
-								   ia_file->
-								   private_data,
-								   attr->
-								   ia_size,
-								   session);
-					if (!retVal) {
-						inode->i_size = attr->ia_size;
-						((struct inode_data *) inode->
-						 i_private)->Flags |=
-			       UPDATE_INODE;
-					}
-#endif
-				}
-
 				if (ia_valid
 				    && !(retVal =
 					 novfs_set_attr(path, attr, session))) {
