diff options
author | Chuck Lever <chuck.lever@oracle.com> | 2018-03-28 13:29:11 -0400 |
---|---|---|
committer | J. Bruce Fields <bfields@redhat.com> | 2018-04-03 15:08:15 -0400 |
commit | 87c5942e8fae81ac296267654a047eb2db81592b (patch) | |
tree | de00193297b93692cfc86f475fe7cb6d6dbdc56a /fs/nfsd/trace.h | |
parent | d890be159a71395bd4ceca09233a8a56d7da69ee (diff) | |
download | lwn-87c5942e8fae81ac296267654a047eb2db81592b.tar.gz lwn-87c5942e8fae81ac296267654a047eb2db81592b.zip |
nfsd: Add I/O trace points in the NFSv4 read proc
NFSv4 read compound processing invokes nfsd_splice_read and
nfs_readv directly, so the trace points currently in nfsd_read are
not invoked for NFSv4 reads.
Move the NFSD READ trace points to common helpers so that NFSv4
reads are captured.
Also, record any local I/O error that occurs, the total count of
bytes that were actually returned, and whether splice or vectored
read was used.
Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Signed-off-by: J. Bruce Fields <bfields@redhat.com>
Diffstat (limited to 'fs/nfsd/trace.h')
-rw-r--r-- | fs/nfsd/trace.h | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/fs/nfsd/trace.h b/fs/nfsd/trace.h index 653e9ee754d2..a8bbd9d00a9e 100644 --- a/fs/nfsd/trace.h +++ b/fs/nfsd/trace.h @@ -43,7 +43,8 @@ DEFINE_EVENT(nfsd_io_class, nfsd_##name, \ TP_ARGS(rqstp, fhp, offset, len)) DEFINE_NFSD_IO_EVENT(read_start); -DEFINE_NFSD_IO_EVENT(read_opened); +DEFINE_NFSD_IO_EVENT(read_splice); +DEFINE_NFSD_IO_EVENT(read_vector); DEFINE_NFSD_IO_EVENT(read_io_done); DEFINE_NFSD_IO_EVENT(read_done); DEFINE_NFSD_IO_EVENT(write_start); @@ -82,6 +83,7 @@ DEFINE_EVENT(nfsd_err_class, nfsd_##name, \ int len), \ TP_ARGS(rqstp, fhp, offset, len)) +DEFINE_NFSD_ERR_EVENT(read_err); DEFINE_NFSD_ERR_EVENT(write_err); #include "state.h" |