[Ocfs2-commits] mfasheh commits r780 - trunk/src
svn-commits at oss.oracle.com
svn-commits at oss.oracle.com
Tue Mar 16 18:37:13 CST 2004
Author: mfasheh
Date: 2004-03-16 18:37:11 -0600 (Tue, 16 Mar 2004)
New Revision: 780
Modified:
trunk/src/namei.c
Log:
* include a patch by Rusty Lynch <rusty at linux.co.intel.com>:
On a 2.6 kernel, sys_unlink will wrap the call to the filesystem
unlink function with atomic_inc/atomic_dec of the inode->i_count.
The following minimal patch fixes ocfs_unlink to take this into
consideration. (Without this patch attempting to delete any file
on a ocfs2 volume from a 2.6 bases system would result in an -EBUSY
error.)
Modified: trunk/src/namei.c
===================================================================
--- trunk/src/namei.c 2004-03-17 00:36:31 UTC (rev 779)
+++ trunk/src/namei.c 2004-03-17 00:37:11 UTC (rev 780)
@@ -581,7 +581,15 @@
__u64 parentOff, fileOff;
bool do_release = false;
struct inode *parentInode = dentry->d_parent->d_inode;
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,0)
+ /*
+ * On a 2.6 kernel sys_unlink will increment the inode
+ * count before calling the filesystem unlink function
+ */
+ int max_cnt = 3; /* one for this process, inode hash, and sys_unlink */
+#else
int max_cnt = 2; /* one for this process and one for inode hash */
+#endif
LOG_ENTRY_ARGS ("(0x%08x, 0x%08x, '%*s')\n", dir, dentry,
dentry->d_name.len, dentry->d_name.name);
More information about the Ocfs2-commits
mailing list