V4 version of the lazytime patches
[ext4-patch-queue.git] / add-lazytime-tracepoints
blob7e724f44956e06fd09424be34f6ae989d2d83d1e
1 vfs: add lazytime tracepoints for better debugging
3 Signed-off-by: Theodore Ts'o <tytso@mit.edu>
4 ---
5  fs/fs-writeback.c | 1 +
6  fs/inode.c        | 5 +++++
7  2 files changed, 6 insertions(+)
9 diff --git a/fs/fs-writeback.c b/fs/fs-writeback.c
10 index 529480a..3d87174 100644
11 --- a/fs/fs-writeback.c
12 +++ b/fs/fs-writeback.c
13 @@ -27,6 +27,7 @@
14  #include <linux/backing-dev.h>
15  #include <linux/tracepoint.h>
16  #include <linux/device.h>
17 +#include <trace/events/fs.h>
18  #include "internal.h"
20  /*
21 diff --git a/fs/inode.c b/fs/inode.c
22 index 37c0429..b2fea60 100644
23 --- a/fs/inode.c
24 +++ b/fs/inode.c
25 @@ -20,6 +20,9 @@
26  #include <linux/list_lru.h>
27  #include "internal.h"
29 +#define CREATE_TRACE_POINTS
30 +#include <trace/events/fs.h>
32  /*
33   * Inode locking rules:
34   *
35 @@ -1443,6 +1446,7 @@ retry:
36                                 inode->i_op->write_time(inode);
37                         else if (inode->i_sb->s_op->write_inode)
38                                 mark_inode_dirty_sync(inode);
39 +                       trace_fs_lazytime_iput(inode);
40                         goto retry;
41                 }
42                 iput_final(inode);
43 @@ -1561,6 +1565,7 @@ static int update_time(struct inode *inode, struct timespec *time, int flags)
44                 inode->i_ts_dirty_day = days_since_boot;
45                 spin_unlock(&inode->i_lock);
46                 inode_requeue_dirtytime(inode);
47 +               trace_fs_lazytime_defer(inode);
48                 return 0;
49         }
50  force_dirty: