ocfs2: Remove masklog ML_DCACHE.
authorTao Ma <boyu.mt@taobao.com>
Wed, 23 Feb 2011 14:51:49 +0000 (22:51 +0800)
committerTao Ma <boyu.mt@taobao.com>
Wed, 23 Feb 2011 14:51:49 +0000 (22:51 +0800)
Remove mlog(0) from fs/ocfs2/dcache.c and the masklog DCACHE.

Signed-off-by: Tao Ma <boyu.mt@taobao.com>
fs/ocfs2/cluster/masklog.c
fs/ocfs2/cluster/masklog.h
fs/ocfs2/dcache.c
fs/ocfs2/ocfs2_trace.h

index 0668eb6e05d6e36e08255f9e9006ef137d6cb0a7..91df3e2571a0c1f1d238233d6d7d54abf4366017 100644 (file)
@@ -97,7 +97,6 @@ static struct mlog_attribute mlog_attrs[MLOG_MAX_BITS] = {
        define_mask(BH_IO),
        define_mask(UPTODATE),
        define_mask(VOTE),
-       define_mask(DCACHE),
        define_mask(CONN),
        define_mask(QUORUM),
        define_mask(EXPORT),
index a815b55d87a7f3d7e309bba1e5ee0581f2dad28f..c64b0aa59e9d900200b008d1b48f539896f54e58 100644 (file)
@@ -99,7 +99,6 @@
 #define ML_BH_IO       0x0000000000100000ULL /* ocfs2 buffer I/O */
 #define ML_UPTODATE    0x0000000000200000ULL /* ocfs2 caching sequence #'s */
 #define ML_VOTE                0x0000000001000000ULL /* ocfs2 node messaging  */
-#define ML_DCACHE      0x0000000002000000ULL /* ocfs2 dcache operations */
 #define ML_CONN                0x0000000004000000ULL /* net connection management */
 #define ML_QUORUM      0x0000000008000000ULL /* net connection quorum */
 #define ML_EXPORT      0x0000000010000000ULL /* ocfs2 export operations */
index c26551c25e8e8633d4fe55c3301d72f182c87819..e5ba348183321d133ab7f75c715b305dbed28a07 100644 (file)
@@ -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;
        }
index a98e52ae06ee9eb595d5a2a65b44b02152dfd79d..6ef3a928023b42febc45d40756165faf8654a920 100644 (file)
@@ -2364,6 +2364,105 @@ TRACE_EVENT(ocfs2_orphan_del,
 );
 
 /* End of trace events for fs/ocfs2/namei.c. */
+
+/* Trace events for fs/ocfs2/dcache.c. */
+
+TRACE_EVENT(ocfs2_dentry_revalidate,
+       TP_PROTO(void *dentry, int len, const char *name),
+       TP_ARGS(dentry, len, name),
+       TP_STRUCT__entry(
+               __field(void *, dentry)
+               __field(int, len)
+               __string(name, name)
+       ),
+       TP_fast_assign(
+               __entry->dentry = dentry;
+               __entry->len = len;
+               __assign_str(name, name);
+       ),
+       TP_printk("%p %.*s", __entry->dentry, __entry->len, __get_str(name))
+);
+
+TRACE_EVENT(ocfs2_dentry_revalidate_negative,
+       TP_PROTO(int len, const char *name, unsigned long pgen,
+                unsigned long gen),
+       TP_ARGS(len, name, pgen, gen),
+       TP_STRUCT__entry(
+               __field(int, len)
+               __string(name, name)
+               __field(unsigned long, pgen)
+               __field(unsigned long, gen)
+       ),
+       TP_fast_assign(
+               __entry->len = len;
+               __assign_str(name, name);
+               __entry->pgen = pgen;
+               __entry->gen = gen;
+       ),
+       TP_printk("%.*s %lu %lu", __entry->len, __get_str(name),
+                 __entry->pgen, __entry->gen)
+);
+
+DEFINE_OCFS2_ULL_EVENT(ocfs2_dentry_revalidate_delete);
+
+DEFINE_OCFS2_ULL_INT_EVENT(ocfs2_dentry_revalidate_orphaned);
+
+DEFINE_OCFS2_ULL_EVENT(ocfs2_dentry_revalidate_nofsdata);
+
+DEFINE_OCFS2_INT_EVENT(ocfs2_dentry_revalidate_ret);
+
+TRACE_EVENT(ocfs2_find_local_alias,
+       TP_PROTO(int len, const char *name),
+       TP_ARGS(len, name),
+       TP_STRUCT__entry(
+               __field(int, len)
+               __string(name, name)
+       ),
+       TP_fast_assign(
+               __entry->len = len;
+               __assign_str(name, name);
+       ),
+       TP_printk("%.*s", __entry->len, __get_str(name))
+);
+
+TRACE_EVENT(ocfs2_dentry_attach_lock,
+       TP_PROTO(int len, const char *name,
+                unsigned long long parent, void *fsdata),
+       TP_ARGS(len, name, parent, fsdata),
+       TP_STRUCT__entry(
+               __field(int, len)
+               __string(name, name)
+               __field(unsigned long long, parent)
+               __field(void *, fsdata)
+       ),
+       TP_fast_assign(
+               __entry->len = len;
+               __assign_str(name, name);
+               __entry->parent = parent;
+               __entry->fsdata = fsdata;
+       ),
+       TP_printk("%.*s %llu %p", __entry->len, __get_str(name),
+                 __entry->parent, __entry->fsdata)
+);
+
+TRACE_EVENT(ocfs2_dentry_attach_lock_found,
+       TP_PROTO(const char *name, unsigned long long parent,
+                unsigned long long ino),
+       TP_ARGS(name, parent, ino),
+       TP_STRUCT__entry(
+               __string(name, name)
+               __field(unsigned long long, parent)
+               __field(unsigned long long, ino)
+       ),
+       TP_fast_assign(
+               __assign_str(name, name);
+               __entry->parent = parent;
+               __entry->ino = ino;
+       ),
+       TP_printk("%s %llu %llu", __get_str(name), __entry->parent, __entry->ino)
+);
+
+/* End of trace events for fs/ocfs2/dcache.c. */
 #endif /* _TRACE_OCFS2_H */
 
 /* This part must be outside protection */