aboutsummaryrefslogtreecommitdiffstats
path: root/fs/nfs/nfs4trace.h
diff options
context:
space:
mode:
authorTrond Myklebust <Trond.Myklebust@netapp.com>2013-08-12 16:58:42 -0400
committerTrond Myklebust <Trond.Myklebust@netapp.com>2013-08-22 08:58:23 -0400
commitc1578b769a644fe1ff3e8324fc404b18f3f01fbe (patch)
treece9cd39742f3834148a002c010071785d3bc1a41 /fs/nfs/nfs4trace.h
parent078ea3dfe396b18ccf608c71a9585b6f7e519bb1 (diff)
NFSv4: Add tracepoints for debugging inode manipulations
Set up basic tracepoints for debugging NFSv4 setattr, access, readlink, readdir, get_acl set_acl get_security_label, and set_security_label. Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'fs/nfs/nfs4trace.h')
-rw-r--r--fs/nfs/nfs4trace.h51
1 files changed, 51 insertions, 0 deletions
diff --git a/fs/nfs/nfs4trace.h b/fs/nfs/nfs4trace.h
index 2646a50a8208..6bd65c2c820b 100644
--- a/fs/nfs/nfs4trace.h
+++ b/fs/nfs/nfs4trace.h
@@ -461,6 +461,57 @@ DEFINE_NFS4_LOOKUP_EVENT(nfs4_remove);
461DEFINE_NFS4_LOOKUP_EVENT(nfs4_get_fs_locations); 461DEFINE_NFS4_LOOKUP_EVENT(nfs4_get_fs_locations);
462DEFINE_NFS4_LOOKUP_EVENT(nfs4_secinfo); 462DEFINE_NFS4_LOOKUP_EVENT(nfs4_secinfo);
463 463
464DECLARE_EVENT_CLASS(nfs4_inode_event,
465 TP_PROTO(
466 const struct inode *inode,
467 int error
468 ),
469
470 TP_ARGS(inode, error),
471
472 TP_STRUCT__entry(
473 __field(dev_t, dev)
474 __field(u32, fhandle)
475 __field(u64, fileid)
476 __field(int, error)
477 ),
478
479 TP_fast_assign(
480 __entry->dev = inode->i_sb->s_dev;
481 __entry->fileid = NFS_FILEID(inode);
482 __entry->fhandle = nfs_fhandle_hash(NFS_FH(inode));
483 __entry->error = error;
484 ),
485
486 TP_printk(
487 "error=%d (%s) fileid=%02x:%02x:%llu fhandle=0x%08x",
488 __entry->error,
489 show_nfsv4_errors(__entry->error),
490 MAJOR(__entry->dev), MINOR(__entry->dev),
491 (unsigned long long)__entry->fileid,
492 __entry->fhandle
493 )
494);
495
496#define DEFINE_NFS4_INODE_EVENT(name) \
497 DEFINE_EVENT(nfs4_inode_event, name, \
498 TP_PROTO( \
499 const struct inode *inode, \
500 int error \
501 ), \
502 TP_ARGS(inode, error))
503
504DEFINE_NFS4_INODE_EVENT(nfs4_setattr);
505DEFINE_NFS4_INODE_EVENT(nfs4_access);
506DEFINE_NFS4_INODE_EVENT(nfs4_readlink);
507DEFINE_NFS4_INODE_EVENT(nfs4_readdir);
508DEFINE_NFS4_INODE_EVENT(nfs4_get_acl);
509DEFINE_NFS4_INODE_EVENT(nfs4_set_acl);
510#ifdef CONFIG_NFS_V4_SECURITY_LABEL
511DEFINE_NFS4_INODE_EVENT(nfs4_get_security_label);
512DEFINE_NFS4_INODE_EVENT(nfs4_set_security_label);
513#endif /* CONFIG_NFS_V4_SECURITY_LABEL */
514
464#endif /* _TRACE_NFS4_H */ 515#endif /* _TRACE_NFS4_H */
465 516
466#undef TRACE_INCLUDE_PATH 517#undef TRACE_INCLUDE_PATH