commit 3d2502a723ca5ac4327177c67415bb0a9cbbf776
Author: Erez_Zadok <[EMAIL PROTECTED]>
Date: Fri May 4 14:49:33 2007 -0400
bugfix: remove defunct unionfs_put_inode method
Removed old workaround code that was needed to get mmap working, is no
longer needed with recent kernels.
diff --git a/fs/unionfs/super.c b/fs/unionfs/super.c
index 6257063..dd7a949 100644
--- a/fs/unionfs/super.c
+++ b/fs/unionfs/super.c
@@ -59,30 +59,6 @@ static void unionfs_read_inode(struct inode *inode)
inode->i_mapping->a_ops = &unionfs_aops;
}
-#if 0
-/* This does not seem to apply anymore, it must have been true for 2.4.x
- * kernels and it causes dirty pages not to be written on umounts
- */
-static void unionfs_put_inode(struct inode *inode)
-{
- /*
- * This is really funky stuff:
- *
- * Basically, if i_count == 1, iput will then decrement it and this
- * inode will be destroyed. It is currently holding a reference to
- * the hidden inode. Therefore, it needs to release that reference
- * by calling iput on the hidden inode. iput() _will_ do it for us
- * (by calling our clear_inode), but _only_ if i_nlink == 0. The
- * problem is, NFS keeps i_nlink == 1 for silly_rename'd files. So
- * we must force our i_nlink to 0 here to trick iput() into calling
- * our clear_inode.
- */
-
- if (atomic_read(&inode->i_count) == 1)
- inode->i_nlink = 0;
-}
-#endif
-
/*
* we now define delete_inode, because there are two VFS paths that may
* destroy an inode: one of them calls clear inode before doing everything
@@ -978,9 +954,6 @@ out:
struct super_operations unionfs_sops = {
.read_inode = unionfs_read_inode,
-#if 0
- .put_inode = unionfs_put_inode,
-#endif
.delete_inode = unionfs_delete_inode,
.put_super = unionfs_put_super,
.statfs = unionfs_statfs,
_______________________________________________
unionfs-cvs mailing list: http://unionfs.filesystems.org/
[email protected]
http://www.fsl.cs.sunysb.edu/mailman/listinfo/unionfs-cvs