commit 858280624a94e274a6ac248641ba85b10b179432
Author: Yiannis Pericleous <[EMAIL PROTECTED]>
Date: Wed May 30 13:27:10 2007 -0400
odf_remove bug, check if unionfs dentry is not negative before trying to
read its i_count
diff --git a/fs/unionfs/odf.c b/fs/unionfs/odf.c
index 6c3fb3b..39440ad 100644
--- a/fs/unionfs/odf.c
+++ b/fs/unionfs/odf.c
@@ -1520,11 +1520,11 @@ int odf_remove(struct dentry *dentry, int flags)
/* remove */
current->fsuid = 0;
current->fsgid = 0;
- if (S_ISDIR(odf_dentry->d_inode->i_mode)) {
+ if (S_ISDIR(odf_dentry->d_inode->i_mode))
err = odf_reclaim(dentry, 0);
- }
else {
- if (atomic_read(&dentry->d_inode->i_count) <= 1)
+ if (!dentry->d_inode ||
+ atomic_read(&dentry->d_inode->i_count) <= 1)
err = vfs_unlink(odf_dentry->d_parent->d_inode,
odf_dentry);
else
/* silly rename open files, so their ino does
_______________________________________________
unionfs-cvs mailing list: http://unionfs.filesystems.org/
[email protected]
http://www.fsl.cs.sunysb.edu/mailman/listinfo/unionfs-cvs