aboutsummaryrefslogtreecommitdiffstats
path: root/include/trace/events/writeback.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/trace/events/writeback.h')
-rw-r--r--include/trace/events/writeback.h64
1 files changed, 64 insertions, 0 deletions
diff --git a/include/trace/events/writeback.h b/include/trace/events/writeback.h
index 562fcae10d9d..0be26acae064 100644
--- a/include/trace/events/writeback.h
+++ b/include/trace/events/writeback.h
@@ -85,6 +85,70 @@ DEFINE_WRITEBACK_EVENT(writeback_bdi_unregister);
85DEFINE_WRITEBACK_EVENT(writeback_thread_start); 85DEFINE_WRITEBACK_EVENT(writeback_thread_start);
86DEFINE_WRITEBACK_EVENT(writeback_thread_stop); 86DEFINE_WRITEBACK_EVENT(writeback_thread_stop);
87 87
88DECLARE_EVENT_CLASS(wbc_class,
89 TP_PROTO(struct writeback_control *wbc, struct backing_dev_info *bdi),
90 TP_ARGS(wbc, bdi),
91 TP_STRUCT__entry(
92 __array(char, name, 32)
93 __field(long, nr_to_write)
94 __field(long, pages_skipped)
95 __field(int, sync_mode)
96 __field(int, nonblocking)
97 __field(int, encountered_congestion)
98 __field(int, for_kupdate)
99 __field(int, for_background)
100 __field(int, for_reclaim)
101 __field(int, range_cyclic)
102 __field(int, more_io)
103 __field(unsigned long, older_than_this)
104 __field(long, range_start)
105 __field(long, range_end)
106 ),
107
108 TP_fast_assign(
109 strncpy(__entry->name, dev_name(bdi->dev), 32);
110 __entry->nr_to_write = wbc->nr_to_write;
111 __entry->pages_skipped = wbc->pages_skipped;
112 __entry->sync_mode = wbc->sync_mode;
113 __entry->for_kupdate = wbc->for_kupdate;
114 __entry->for_background = wbc->for_background;
115 __entry->for_reclaim = wbc->for_reclaim;
116 __entry->range_cyclic = wbc->range_cyclic;
117 __entry->more_io = wbc->more_io;
118 __entry->older_than_this = wbc->older_than_this ?
119 *wbc->older_than_this : 0;
120 __entry->range_start = (long)wbc->range_start;
121 __entry->range_end = (long)wbc->range_end;
122 ),
123
124 TP_printk("bdi %s: towrt=%ld skip=%ld mode=%d kupd=%d "
125 "bgrd=%d reclm=%d cyclic=%d more=%d older=0x%lx "
126 "start=0x%lx end=0x%lx",
127 __entry->name,
128 __entry->nr_to_write,
129 __entry->pages_skipped,
130 __entry->sync_mode,
131 __entry->for_kupdate,
132 __entry->for_background,
133 __entry->for_reclaim,
134 __entry->range_cyclic,
135 __entry->more_io,
136 __entry->older_than_this,
137 __entry->range_start,
138 __entry->range_end)
139)
140
141#define DEFINE_WBC_EVENT(name) \
142DEFINE_EVENT(wbc_class, name, \
143 TP_PROTO(struct writeback_control *wbc, struct backing_dev_info *bdi), \
144 TP_ARGS(wbc, bdi))
145DEFINE_WBC_EVENT(wbc_writeback_start);
146DEFINE_WBC_EVENT(wbc_writeback_written);
147DEFINE_WBC_EVENT(wbc_writeback_wait);
148DEFINE_WBC_EVENT(wbc_balance_dirty_start);
149DEFINE_WBC_EVENT(wbc_balance_dirty_written);
150DEFINE_WBC_EVENT(wbc_balance_dirty_wait);
151
88#endif /* _TRACE_WRITEBACK_H */ 152#endif /* _TRACE_WRITEBACK_H */
89 153
90/* This part must be outside protection */ 154/* This part must be outside protection */