commit 2fba2f3f6f01028b18e9232a058cb5aed1c428c6
Author: Yiannis Pericleous <[EMAIL PROTECTED]>
Date:   Wed May 30 16:36:31 2007 -0400

    call inherint_mnt on parent after calls to create_parent, since
    the newly created dentry might have a lower mnt on the leftmost
    branch so inherint_mnt on that dentry will not inherit the mnt to
    its parents

diff --git a/fs/unionfs/inode.c b/fs/unionfs/inode.c
index 
0ce143d4278fe96a99ad772c1268c1500d847c83..b6aa79b8b2acb5abdfc31db274d1e4a31bf49a98
 100644
--- a/fs/unionfs/inode.c
+++ b/fs/unionfs/inode.c
@@ -72,6 +72,7 @@ static int unionfs_create(struct inode *
                                err = PTR_ERR(hidden_dentry);
                        goto out;
                }
+               unionfs_inherit_mnt(dentry->d_parent);
        }
 
        if (hidden_dentry->d_inode && UNIONFS_D(dentry)->odf.whiteout) {
@@ -324,6 +325,7 @@ static int unionfs_symlink(struct inode 
                                        "for bindex = %d\n", bstart);
                                goto out;
                }
+               unionfs_inherit_mnt(dentry->d_parent);
        }
 
        if (hidden_dentry->d_inode && UNIONFS_D(dentry)->odf.whiteout) {
@@ -403,6 +405,7 @@ static int unionfs_mkdir(struct inode *p
                        err = PTR_ERR(hidden_dentry);
                        goto out;
                }
+               unionfs_inherit_mnt(dentry->d_parent);
        }
 
        if (hidden_dentry->d_inode && UNIONFS_D(dentry)->odf.whiteout) {
@@ -498,6 +501,7 @@ static int unionfs_mknod(struct inode *d
                               bstart, PTR_ERR(hidden_dentry));
                        goto out;
                }
+               unionfs_inherit_mnt(dentry->d_parent);
        }
 
        if (hidden_dentry->d_inode && UNIONFS_D(dentry)->odf.whiteout) {
_______________________________________________
unionfs-cvs mailing list: http://unionfs.filesystems.org/
[email protected]
http://www.fsl.cs.sunysb.edu/mailman/listinfo/unionfs-cvs

Reply via email to