Unionfs: initialize inode times for reused inodes
authorErez Zadok <ezk@cs.sunysb.edu>
Tue, 25 Dec 2007 21:50:44 +0000 (16:50 -0500)
committerErez Zadok <ezk@cs.sunysb.edu>
Sun, 23 Mar 2008 03:44:34 +0000 (23:44 -0400)
Signed-off-by: Erez Zadok <ezk@cs.sunysb.edu>
fs/unionfs/super.c

index d1049fbb16d488c5ad424629a8d6069c9d895dd7..e828a91c53aa32744ec2b082c86c5902e2961619 100644 (file)
@@ -55,6 +55,14 @@ static void unionfs_read_inode(struct inode *inode)
 
        inode->i_mapping->a_ops = &unionfs_aops;
 
+       /*
+        * reset times so unionfs_copy_attr_all can keep out time invariants
+        * right (upper inode time being the max of all lower ones).
+        */
+       inode->i_atime.tv_sec = inode->i_atime.tv_nsec = 0;
+       inode->i_mtime.tv_sec = inode->i_mtime.tv_nsec = 0;
+       inode->i_ctime.tv_sec = inode->i_ctime.tv_nsec = 0;
+
        unionfs_read_unlock(inode->i_sb);
 }