Loading fs/nfsd/trace.h +27 −0 Original line number Diff line number Diff line Loading @@ -2471,6 +2471,33 @@ TRACE_EVENT(nfsd_vfs_symlink, ) ); TRACE_EVENT(nfsd_vfs_link, TP_PROTO( const struct svc_rqst *rqstp, const struct svc_fh *sfhp, const struct svc_fh *tfhp, const char *name, unsigned int namelen ), TP_ARGS(rqstp, sfhp, tfhp, name, namelen), TP_STRUCT__entry( NFSD_TRACE_PROC_CALL_FIELDS(rqstp) __field(u32, sfh_hash) __field(u32, tfh_hash) __string_len(name, name, namelen) ), TP_fast_assign( NFSD_TRACE_PROC_CALL_ASSIGNMENTS(rqstp); __entry->sfh_hash = knfsd_fh_hash(&sfhp->fh_handle); __entry->tfh_hash = knfsd_fh_hash(&tfhp->fh_handle); __assign_str(name); ), TP_printk("xid=0x%08x src_fh=0x%08x tgt_fh=0x%08x name=%s", __entry->xid, __entry->sfh_hash, __entry->tfh_hash, __get_str(name) ) ); #endif /* _NFSD_TRACE_H */ #undef TRACE_INCLUDE_PATH Loading fs/nfsd/vfs.c +2 −0 Original line number Diff line number Diff line Loading @@ -1721,6 +1721,8 @@ nfsd_link(struct svc_rqst *rqstp, struct svc_fh *ffhp, __be32 err; int host_err; trace_nfsd_vfs_link(rqstp, ffhp, tfhp, name, len); err = fh_verify(rqstp, ffhp, S_IFDIR, NFSD_MAY_CREATE); if (err) goto out; Loading Loading
fs/nfsd/trace.h +27 −0 Original line number Diff line number Diff line Loading @@ -2471,6 +2471,33 @@ TRACE_EVENT(nfsd_vfs_symlink, ) ); TRACE_EVENT(nfsd_vfs_link, TP_PROTO( const struct svc_rqst *rqstp, const struct svc_fh *sfhp, const struct svc_fh *tfhp, const char *name, unsigned int namelen ), TP_ARGS(rqstp, sfhp, tfhp, name, namelen), TP_STRUCT__entry( NFSD_TRACE_PROC_CALL_FIELDS(rqstp) __field(u32, sfh_hash) __field(u32, tfh_hash) __string_len(name, name, namelen) ), TP_fast_assign( NFSD_TRACE_PROC_CALL_ASSIGNMENTS(rqstp); __entry->sfh_hash = knfsd_fh_hash(&sfhp->fh_handle); __entry->tfh_hash = knfsd_fh_hash(&tfhp->fh_handle); __assign_str(name); ), TP_printk("xid=0x%08x src_fh=0x%08x tgt_fh=0x%08x name=%s", __entry->xid, __entry->sfh_hash, __entry->tfh_hash, __get_str(name) ) ); #endif /* _NFSD_TRACE_H */ #undef TRACE_INCLUDE_PATH Loading
fs/nfsd/vfs.c +2 −0 Original line number Diff line number Diff line Loading @@ -1721,6 +1721,8 @@ nfsd_link(struct svc_rqst *rqstp, struct svc_fh *ffhp, __be32 err; int host_err; trace_nfsd_vfs_link(rqstp, ffhp, tfhp, name, len); err = fh_verify(rqstp, ffhp, S_IFDIR, NFSD_MAY_CREATE); if (err) goto out; Loading