|
@@ -28,7 +28,6 @@
|
|
|
#include <linux/slab.h>
|
|
|
#include <linux/namei.h>
|
|
|
|
|
|
-#define MLOG_MASK_PREFIX ML_DCACHE
|
|
|
#include <cluster/masklog.h>
|
|
|
|
|
|
#include "ocfs2.h"
|
|
@@ -39,6 +38,7 @@
|
|
|
#include "file.h"
|
|
|
#include "inode.h"
|
|
|
#include "super.h"
|
|
|
+#include "ocfs2_trace.h"
|
|
|
|
|
|
void ocfs2_dentry_attach_gen(struct dentry *dentry)
|
|
|
{
|
|
@@ -62,8 +62,8 @@ static int ocfs2_dentry_revalidate(struct dentry *dentry,
|
|
|
inode = dentry->d_inode;
|
|
|
osb = OCFS2_SB(dentry->d_sb);
|
|
|
|
|
|
- mlog(0, "(0x%p, '%.*s')\n", dentry,
|
|
|
- dentry->d_name.len, dentry->d_name.name);
|
|
|
+ trace_ocfs2_dentry_revalidate(dentry, dentry->d_name.len,
|
|
|
+ dentry->d_name.name);
|
|
|
|
|
|
/* For a negative dentry -
|
|
|
* check the generation number of the parent and compare with the
|
|
@@ -73,9 +73,10 @@ static int ocfs2_dentry_revalidate(struct dentry *dentry,
|
|
|
unsigned long gen = (unsigned long) dentry->d_fsdata;
|
|
|
unsigned long pgen =
|
|
|
OCFS2_I(dentry->d_parent->d_inode)->ip_dir_lock_gen;
|
|
|
- mlog(0, "negative dentry: %.*s parent gen: %lu "
|
|
|
- "dentry gen: %lu\n",
|
|
|
- dentry->d_name.len, dentry->d_name.name, pgen, gen);
|
|
|
+
|
|
|
+ trace_ocfs2_dentry_revalidate_negative(dentry->d_name.len,
|
|
|
+ dentry->d_name.name,
|
|
|
+ pgen, gen);
|
|
|
if (gen != pgen)
|
|
|
goto bail;
|
|
|
goto valid;
|
|
@@ -90,8 +91,8 @@ static int ocfs2_dentry_revalidate(struct dentry *dentry,
|
|
|
/* did we or someone else delete this inode? */
|
|
|
if (OCFS2_I(inode)->ip_flags & OCFS2_INODE_DELETED) {
|
|
|
spin_unlock(&OCFS2_I(inode)->ip_lock);
|
|
|
- mlog(0, "inode (%llu) deleted, returning false\n",
|
|
|
- (unsigned long long)OCFS2_I(inode)->ip_blkno);
|
|
|
+ trace_ocfs2_dentry_revalidate_delete(
|
|
|
+ (unsigned long long)OCFS2_I(inode)->ip_blkno);
|
|
|
goto bail;
|
|
|
}
|
|
|
spin_unlock(&OCFS2_I(inode)->ip_lock);
|
|
@@ -101,10 +102,9 @@ static int ocfs2_dentry_revalidate(struct dentry *dentry,
|
|
|
* inode nlink hits zero, it never goes back.
|
|
|
*/
|
|
|
if (inode->i_nlink == 0) {
|
|
|
- mlog(0, "Inode %llu orphaned, returning false "
|
|
|
- "dir = %d\n",
|
|
|
- (unsigned long long)OCFS2_I(inode)->ip_blkno,
|
|
|
- S_ISDIR(inode->i_mode));
|
|
|
+ trace_ocfs2_dentry_revalidate_orphaned(
|
|
|
+ (unsigned long long)OCFS2_I(inode)->ip_blkno,
|
|
|
+ S_ISDIR(inode->i_mode));
|
|
|
goto bail;
|
|
|
}
|
|
|
|
|
@@ -113,9 +113,8 @@ static int ocfs2_dentry_revalidate(struct dentry *dentry,
|
|
|
* redo it.
|
|
|
*/
|
|
|
if (!dentry->d_fsdata) {
|
|
|
- mlog(0, "Inode %llu doesn't have dentry lock, "
|
|
|
- "returning false\n",
|
|
|
- (unsigned long long)OCFS2_I(inode)->ip_blkno);
|
|
|
+ trace_ocfs2_dentry_revalidate_nofsdata(
|
|
|
+ (unsigned long long)OCFS2_I(inode)->ip_blkno);
|
|
|
goto bail;
|
|
|
}
|
|
|
|
|
@@ -123,7 +122,7 @@ valid:
|
|
|
ret = 1;
|
|
|
|
|
|
bail:
|
|
|
- mlog(0, "ret = %d\n", ret);
|
|
|
+ trace_ocfs2_dentry_revalidate_ret(ret);
|
|
|
return ret;
|
|
|
}
|
|
|
|
|
@@ -180,8 +179,8 @@ struct dentry *ocfs2_find_local_alias(struct inode *inode,
|
|
|
|
|
|
spin_lock(&dentry->d_lock);
|
|
|
if (ocfs2_match_dentry(dentry, parent_blkno, skip_unhashed)) {
|
|
|
- mlog(0, "dentry found: %.*s\n",
|
|
|
- dentry->d_name.len, dentry->d_name.name);
|
|
|
+ trace_ocfs2_find_local_alias(dentry->d_name.len,
|
|
|
+ dentry->d_name.name);
|
|
|
|
|
|
dget_dlock(dentry);
|
|
|
spin_unlock(&dentry->d_lock);
|
|
@@ -239,9 +238,8 @@ int ocfs2_dentry_attach_lock(struct dentry *dentry,
|
|
|
struct dentry *alias;
|
|
|
struct ocfs2_dentry_lock *dl = dentry->d_fsdata;
|
|
|
|
|
|
- mlog(0, "Attach \"%.*s\", parent %llu, fsdata: %p\n",
|
|
|
- dentry->d_name.len, dentry->d_name.name,
|
|
|
- (unsigned long long)parent_blkno, dl);
|
|
|
+ trace_ocfs2_dentry_attach_lock(dentry->d_name.len, dentry->d_name.name,
|
|
|
+ (unsigned long long)parent_blkno, dl);
|
|
|
|
|
|
/*
|
|
|
* Negative dentry. We ignore these for now.
|
|
@@ -291,7 +289,9 @@ int ocfs2_dentry_attach_lock(struct dentry *dentry,
|
|
|
(unsigned long long)parent_blkno,
|
|
|
(unsigned long long)dl->dl_parent_blkno);
|
|
|
|
|
|
- mlog(0, "Found: %s\n", dl->dl_lockres.l_name);
|
|
|
+ trace_ocfs2_dentry_attach_lock_found(dl->dl_lockres.l_name,
|
|
|
+ (unsigned long long)parent_blkno,
|
|
|
+ (unsigned long long)OCFS2_I(inode)->ip_blkno);
|
|
|
|
|
|
goto out_attach;
|
|
|
}
|