NFS: Add tracepoints for layouterror and layoutstats.
Allow tracing of the NFSv4.2 layouterror and layoutstats operations. Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com>
This commit is contained in:
parent
a19b4785d9
commit
638037b158
@ -17,6 +17,7 @@
|
|||||||
#include "nfs4session.h"
|
#include "nfs4session.h"
|
||||||
#include "internal.h"
|
#include "internal.h"
|
||||||
#include "delegation.h"
|
#include "delegation.h"
|
||||||
|
#include "nfs4trace.h"
|
||||||
|
|
||||||
#define NFSDBG_FACILITY NFSDBG_PROC
|
#define NFSDBG_FACILITY NFSDBG_PROC
|
||||||
static int nfs42_do_offload_cancel_async(struct file *dst, nfs4_stateid *std);
|
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)
|
|||||||
|
|
||||||
switch (task->tk_status) {
|
switch (task->tk_status) {
|
||||||
case 0:
|
case 0:
|
||||||
break;
|
return;
|
||||||
case -NFS4ERR_BADHANDLE:
|
case -NFS4ERR_BADHANDLE:
|
||||||
case -ESTALE:
|
case -ESTALE:
|
||||||
pnfs_destroy_layout(NFS_I(inode));
|
pnfs_destroy_layout(NFS_I(inode));
|
||||||
@ -760,6 +761,8 @@ nfs42_layoutstat_done(struct rpc_task *task, void *calldata)
|
|||||||
case -EOPNOTSUPP:
|
case -EOPNOTSUPP:
|
||||||
NFS_SERVER(inode)->caps &= ~NFS_CAP_LAYOUTSTATS;
|
NFS_SERVER(inode)->caps &= ~NFS_CAP_LAYOUTSTATS;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
trace_nfs4_layoutstats(inode, &data->args.stateid, task->tk_status);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
@ -882,7 +885,7 @@ nfs42_layouterror_done(struct rpc_task *task, void *calldata)
|
|||||||
|
|
||||||
switch (task->tk_status) {
|
switch (task->tk_status) {
|
||||||
case 0:
|
case 0:
|
||||||
break;
|
return;
|
||||||
case -NFS4ERR_BADHANDLE:
|
case -NFS4ERR_BADHANDLE:
|
||||||
case -ESTALE:
|
case -ESTALE:
|
||||||
pnfs_destroy_layout(NFS_I(inode));
|
pnfs_destroy_layout(NFS_I(inode));
|
||||||
@ -926,6 +929,9 @@ nfs42_layouterror_done(struct rpc_task *task, void *calldata)
|
|||||||
case -EOPNOTSUPP:
|
case -EOPNOTSUPP:
|
||||||
NFS_SERVER(inode)->caps &= ~NFS_CAP_LAYOUTERROR;
|
NFS_SERVER(inode)->caps &= ~NFS_CAP_LAYOUTERROR;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
trace_nfs4_layouterror(inode, &data->args.errors[0].stateid,
|
||||||
|
task->tk_status);
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
@ -1994,6 +1994,8 @@ TRACE_EVENT(nfs4_layoutget,
|
|||||||
DEFINE_NFS4_INODE_STATEID_EVENT(nfs4_layoutcommit);
|
DEFINE_NFS4_INODE_STATEID_EVENT(nfs4_layoutcommit);
|
||||||
DEFINE_NFS4_INODE_STATEID_EVENT(nfs4_layoutreturn);
|
DEFINE_NFS4_INODE_STATEID_EVENT(nfs4_layoutreturn);
|
||||||
DEFINE_NFS4_INODE_STATEID_EVENT(nfs4_layoutreturn_on_close);
|
DEFINE_NFS4_INODE_STATEID_EVENT(nfs4_layoutreturn_on_close);
|
||||||
|
DEFINE_NFS4_INODE_STATEID_EVENT(nfs4_layouterror);
|
||||||
|
DEFINE_NFS4_INODE_STATEID_EVENT(nfs4_layoutstats);
|
||||||
|
|
||||||
TRACE_DEFINE_ENUM(PNFS_UPDATE_LAYOUT_UNKNOWN);
|
TRACE_DEFINE_ENUM(PNFS_UPDATE_LAYOUT_UNKNOWN);
|
||||||
TRACE_DEFINE_ENUM(PNFS_UPDATE_LAYOUT_NO_PNFS);
|
TRACE_DEFINE_ENUM(PNFS_UPDATE_LAYOUT_NO_PNFS);
|
||||||
|
Loading…
Reference in New Issue
Block a user