Skip to content

Commit 638037b

Browse files
author
Trond Myklebust
committed
NFS: Add tracepoints for layouterror and layoutstats.
Allow tracing of the NFSv4.2 layouterror and layoutstats operations. Signed-off-by: Trond Myklebust <[email protected]>
1 parent a19b478 commit 638037b

File tree

2 files changed

+10
-2
lines changed

2 files changed

+10
-2
lines changed

fs/nfs/nfs42proc.c

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
#include "nfs4session.h"
1818
#include "internal.h"
1919
#include "delegation.h"
20+
#include "nfs4trace.h"
2021

2122
#define NFSDBG_FACILITY NFSDBG_PROC
2223
static int nfs42_do_offload_cancel_async(struct file *dst, nfs4_stateid *std);
@@ -714,7 +715,7 @@ nfs42_layoutstat_done(struct rpc_task *task, void *calldata)
714715

715716
switch (task->tk_status) {
716717
case 0:
717-
break;
718+
return;
718719
case -NFS4ERR_BADHANDLE:
719720
case -ESTALE:
720721
pnfs_destroy_layout(NFS_I(inode));
@@ -760,6 +761,8 @@ nfs42_layoutstat_done(struct rpc_task *task, void *calldata)
760761
case -EOPNOTSUPP:
761762
NFS_SERVER(inode)->caps &= ~NFS_CAP_LAYOUTSTATS;
762763
}
764+
765+
trace_nfs4_layoutstats(inode, &data->args.stateid, task->tk_status);
763766
}
764767

765768
static void
@@ -882,7 +885,7 @@ nfs42_layouterror_done(struct rpc_task *task, void *calldata)
882885

883886
switch (task->tk_status) {
884887
case 0:
885-
break;
888+
return;
886889
case -NFS4ERR_BADHANDLE:
887890
case -ESTALE:
888891
pnfs_destroy_layout(NFS_I(inode));
@@ -926,6 +929,9 @@ nfs42_layouterror_done(struct rpc_task *task, void *calldata)
926929
case -EOPNOTSUPP:
927930
NFS_SERVER(inode)->caps &= ~NFS_CAP_LAYOUTERROR;
928931
}
932+
933+
trace_nfs4_layouterror(inode, &data->args.errors[0].stateid,
934+
task->tk_status);
929935
}
930936

931937
static void

fs/nfs/nfs4trace.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1994,6 +1994,8 @@ TRACE_EVENT(nfs4_layoutget,
19941994
DEFINE_NFS4_INODE_STATEID_EVENT(nfs4_layoutcommit);
19951995
DEFINE_NFS4_INODE_STATEID_EVENT(nfs4_layoutreturn);
19961996
DEFINE_NFS4_INODE_STATEID_EVENT(nfs4_layoutreturn_on_close);
1997+
DEFINE_NFS4_INODE_STATEID_EVENT(nfs4_layouterror);
1998+
DEFINE_NFS4_INODE_STATEID_EVENT(nfs4_layoutstats);
19971999

19982000
TRACE_DEFINE_ENUM(PNFS_UPDATE_LAYOUT_UNKNOWN);
19992001
TRACE_DEFINE_ENUM(PNFS_UPDATE_LAYOUT_NO_PNFS);

0 commit comments

Comments
 (0)