aboutsummaryrefslogtreecommitdiffstats
path: root/fs/nfs
diff options
context:
space:
mode:
authorTrond Myklebust <trond.myklebust@primarydata.com>2015-03-25 19:09:08 -0400
committerTrond Myklebust <trond.myklebust@primarydata.com>2015-03-27 12:39:34 -0400
commit81b79afb504870a31ee1f764e81a202685cde795 (patch)
treebd1940c2c2a63430b1b1598a348b10026fd34afc /fs/nfs
parentfc87701b918c05c2d78f8191f5bc3c6c178bdb3d (diff)
NFSv4: Allow tracing of NFSv4 fsync calls
I appear to have missed this when adding the ftrace probes. Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
Diffstat (limited to 'fs/nfs')
-rw-r--r--fs/nfs/nfs4file.c5
-rw-r--r--fs/nfs/nfstrace.c3
2 files changed, 8 insertions, 0 deletions
diff --git a/fs/nfs/nfs4file.c b/fs/nfs/nfs4file.c
index 8b46389c4c5b..0de62f7cfebf 100644
--- a/fs/nfs/nfs4file.c
+++ b/fs/nfs/nfs4file.c
@@ -10,6 +10,8 @@
10#include "fscache.h" 10#include "fscache.h"
11#include "pnfs.h" 11#include "pnfs.h"
12 12
13#include "nfstrace.h"
14
13#ifdef CONFIG_NFS_V4_2 15#ifdef CONFIG_NFS_V4_2
14#include "nfs42.h" 16#include "nfs42.h"
15#endif 17#endif
@@ -100,6 +102,8 @@ nfs4_file_fsync(struct file *file, loff_t start, loff_t end, int datasync)
100 int ret; 102 int ret;
101 struct inode *inode = file_inode(file); 103 struct inode *inode = file_inode(file);
102 104
105 trace_nfs_fsync_enter(inode);
106
103 do { 107 do {
104 ret = filemap_write_and_wait_range(inode->i_mapping, start, end); 108 ret = filemap_write_and_wait_range(inode->i_mapping, start, end);
105 if (ret != 0) 109 if (ret != 0)
@@ -118,6 +122,7 @@ nfs4_file_fsync(struct file *file, loff_t start, loff_t end, int datasync)
118 end = LLONG_MAX; 122 end = LLONG_MAX;
119 } while (ret == -EAGAIN); 123 } while (ret == -EAGAIN);
120 124
125 trace_nfs_fsync_exit(inode, ret);
121 return ret; 126 return ret;
122} 127}
123 128
diff --git a/fs/nfs/nfstrace.c b/fs/nfs/nfstrace.c
index 4eb0aead69b6..c74f7af23d77 100644
--- a/fs/nfs/nfstrace.c
+++ b/fs/nfs/nfstrace.c
@@ -7,3 +7,6 @@
7 7
8#define CREATE_TRACE_POINTS 8#define CREATE_TRACE_POINTS
9#include "nfstrace.h" 9#include "nfstrace.h"
10
11EXPORT_TRACEPOINT_SYMBOL_GPL(nfs_fsync_enter);
12EXPORT_TRACEPOINT_SYMBOL_GPL(nfs_fsync_exit);