[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <1176130455765-git-send-email-jsipek@cs.sunysb.edu>
Date: Mon, 9 Apr 2007 10:54:08 -0400
From: "Josef 'Jeff' Sipek" <jsipek@...sunysb.edu>
To: linux-kernel@...r.kernel.org, linux-fsdevel@...r.kernel.org
Cc: akpm@...ux-foundation.org, Erez Zadok <ezk@...sunysb.edu>,
"Josef 'Jeff' Sipek" <jsipek@...sunysb.edu>
Subject: [PATCH 17/21] Unionfs: vfsmount reference counting fixes
From: Erez Zadok <ezk@...sunysb.edu>
Signed-off-by: Erez Zadok <ezk@...sunysb.edu>
Signed-off-by: Josef 'Jeff' Sipek <jsipek@...sunysb.edu>
---
fs/unionfs/dentry.c | 8 +++-----
1 files changed, 3 insertions(+), 5 deletions(-)
diff --git a/fs/unionfs/dentry.c b/fs/unionfs/dentry.c
index 4756b78..b08842f 100644
--- a/fs/unionfs/dentry.c
+++ b/fs/unionfs/dentry.c
@@ -235,8 +235,8 @@ int __unionfs_d_revalidate_chain(struct dentry *dentry, struct nameidata *nd)
valid = __unionfs_d_revalidate_one(chain[i], nd);
/* XXX: is this the correct mntput condition?! */
if (valid && chain_len > 0 &&
- sbgen != dgen && dentry->d_inode &&
- S_ISDIR(dentry->d_inode->i_mode)) {
+ sbgen != dgen && chain[i]->d_inode &&
+ S_ISDIR(chain[i]->d_inode->i_mode)) {
for (bindex = saved_bstart; bindex <= saved_bend; bindex++)
unionfs_mntput(chain[i], bindex);
}
@@ -256,9 +256,7 @@ int __unionfs_d_revalidate_chain(struct dentry *dentry, struct nameidata *nd)
saved_bend = dbend(dentry);
valid = __unionfs_d_revalidate_one(dentry, nd);
- if (valid && chain_len > 0 &&
- sbgen != dgen && dentry->d_inode &&
- S_ISDIR(dentry->d_inode->i_mode)) {
+ if (valid && chain_len > 0 && sbgen != dgen) {
for (bindex = saved_bstart; bindex <= saved_bend; bindex++)
unionfs_mntput(dentry, bindex);
}
--
1.5.0.3.268.g3dda
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists