From 87c5942e8fae81ac296267654a047eb2db81592b Mon Sep 17 00:00:00 2001 From: Chuck Lever Date: Wed, 28 Mar 2018 13:29:11 -0400 Subject: 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 Signed-off-by: J. Bruce Fields --- fs/nfsd/trace.h | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'fs/nfsd/trace.h') 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" -- cgit v1.2.3