aboutsummaryrefslogtreecommitdiffstats
path: root/include/trace
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2015-11-05 14:22:07 -0500
committerLinus Torvalds <torvalds@linux-foundation.org>2015-11-05 14:22:07 -0500
commit0fcb9d21b4e18ede3727b8905e74acd0d1daef56 (patch)
treef8181c110c8bed5b6322122ba086f34bbfb269f9 /include/trace
parentd000f8d67f2bb464c9cf4fb5103f78d8cb406c05 (diff)
parentbeaa57dd986d4f398728c060692fc2452895cfd8 (diff)
Merge tag 'for-f2fs-4.4' of git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs
Pull f2fs updates from Jaegeuk Kim: "Most part of the patches include enhancing the stability and performance of in-memory extent caches feature. In addition, it introduces several new features and configurable points: - F2FS_GOING_DOWN_METAFLUSH ioctl to test power failures - F2FS_IOC_WRITE_CHECKPOINT ioctl to trigger checkpoint by users - background_gc=sync mount option to do gc synchronously - periodic checkpoints - sysfs entry to control readahead blocks for free nids And the following bug fixes have been merged. - fix SSA corruption by collapse/insert_range - correct a couple of gc behaviors - fix the results of f2fs_map_blocks - fix error case handling of volatile/atomic writes" * tag 'for-f2fs-4.4' of git://git.kernel.org/pub/scm/linux/kernel/git/jaegeuk/f2fs: (54 commits) f2fs: fix to skip shrinking extent nodes f2fs: fix error path of ->symlink f2fs: fix to clear GCed flag for atomic written page f2fs: don't need to submit bio on error case f2fs: fix leakage of inmemory atomic pages f2fs: refactor __find_rev_next_{zero}_bit f2fs: support fiemap for inline_data f2fs: flush dirty data for bmap f2fs: relocate the tracepoint for background_gc f2fs crypto: fix racing of accessing encrypted page among f2fs: export ra_nid_pages to sysfs f2fs: readahead for free nids building f2fs: support lower priority asynchronous readahead in ra_meta_pages f2fs: don't tag REQ_META for temporary non-meta pages f2fs: add a tracepoint for f2fs_read_data_pages f2fs: set GFP_NOFS for grab_cache_page f2fs: fix SSA updates resulting in corruption Revert "f2fs: do not skip dentry block writes" f2fs: add F2FS_GOING_DOWN_METAFLUSH to test power-failure f2fs: merge meta writes as many possible ...
Diffstat (limited to 'include/trace')
-rw-r--r--include/trace/events/f2fs.h69
1 files changed, 64 insertions, 5 deletions
diff --git a/include/trace/events/f2fs.h b/include/trace/events/f2fs.h
index a01946514b5a..00b4a6308249 100644
--- a/include/trace/events/f2fs.h
+++ b/include/trace/events/f2fs.h
@@ -514,6 +514,34 @@ TRACE_EVENT(f2fs_map_blocks,
514 __entry->ret) 514 __entry->ret)
515); 515);
516 516
517TRACE_EVENT(f2fs_background_gc,
518
519 TP_PROTO(struct super_block *sb, long wait_ms,
520 unsigned int prefree, unsigned int free),
521
522 TP_ARGS(sb, wait_ms, prefree, free),
523
524 TP_STRUCT__entry(
525 __field(dev_t, dev)
526 __field(long, wait_ms)
527 __field(unsigned int, prefree)
528 __field(unsigned int, free)
529 ),
530
531 TP_fast_assign(
532 __entry->dev = sb->s_dev;
533 __entry->wait_ms = wait_ms;
534 __entry->prefree = prefree;
535 __entry->free = free;
536 ),
537
538 TP_printk("dev = (%d,%d), wait_ms = %ld, prefree = %u, free = %u",
539 show_dev(__entry),
540 __entry->wait_ms,
541 __entry->prefree,
542 __entry->free)
543);
544
517TRACE_EVENT(f2fs_get_victim, 545TRACE_EVENT(f2fs_get_victim,
518 546
519 TP_PROTO(struct super_block *sb, int type, int gc_type, 547 TP_PROTO(struct super_block *sb, int type, int gc_type,
@@ -1000,6 +1028,32 @@ TRACE_EVENT(f2fs_writepages,
1000 __entry->for_sync) 1028 __entry->for_sync)
1001); 1029);
1002 1030
1031TRACE_EVENT(f2fs_readpages,
1032
1033 TP_PROTO(struct inode *inode, struct page *page, unsigned int nrpage),
1034
1035 TP_ARGS(inode, page, nrpage),
1036
1037 TP_STRUCT__entry(
1038 __field(dev_t, dev)
1039 __field(ino_t, ino)
1040 __field(pgoff_t, start)
1041 __field(unsigned int, nrpage)
1042 ),
1043
1044 TP_fast_assign(
1045 __entry->dev = inode->i_sb->s_dev;
1046 __entry->ino = inode->i_ino;
1047 __entry->start = page->index;
1048 __entry->nrpage = nrpage;
1049 ),
1050
1051 TP_printk("dev = (%d,%d), ino = %lu, start = %lu nrpage = %u",
1052 show_dev_ino(__entry),
1053 (unsigned long)__entry->start,
1054 __entry->nrpage)
1055);
1056
1003TRACE_EVENT(f2fs_write_checkpoint, 1057TRACE_EVENT(f2fs_write_checkpoint,
1004 1058
1005 TP_PROTO(struct super_block *sb, int reason, char *msg), 1059 TP_PROTO(struct super_block *sb, int reason, char *msg),
@@ -1132,17 +1186,19 @@ TRACE_EVENT_CONDITION(f2fs_lookup_extent_tree_end,
1132 __entry->len) 1186 __entry->len)
1133); 1187);
1134 1188
1135TRACE_EVENT(f2fs_update_extent_tree, 1189TRACE_EVENT(f2fs_update_extent_tree_range,
1136 1190
1137 TP_PROTO(struct inode *inode, unsigned int pgofs, block_t blkaddr), 1191 TP_PROTO(struct inode *inode, unsigned int pgofs, block_t blkaddr,
1192 unsigned int len),
1138 1193
1139 TP_ARGS(inode, pgofs, blkaddr), 1194 TP_ARGS(inode, pgofs, blkaddr, len),
1140 1195
1141 TP_STRUCT__entry( 1196 TP_STRUCT__entry(
1142 __field(dev_t, dev) 1197 __field(dev_t, dev)
1143 __field(ino_t, ino) 1198 __field(ino_t, ino)
1144 __field(unsigned int, pgofs) 1199 __field(unsigned int, pgofs)
1145 __field(u32, blk) 1200 __field(u32, blk)
1201 __field(unsigned int, len)
1146 ), 1202 ),
1147 1203
1148 TP_fast_assign( 1204 TP_fast_assign(
@@ -1150,12 +1206,15 @@ TRACE_EVENT(f2fs_update_extent_tree,
1150 __entry->ino = inode->i_ino; 1206 __entry->ino = inode->i_ino;
1151 __entry->pgofs = pgofs; 1207 __entry->pgofs = pgofs;
1152 __entry->blk = blkaddr; 1208 __entry->blk = blkaddr;
1209 __entry->len = len;
1153 ), 1210 ),
1154 1211
1155 TP_printk("dev = (%d,%d), ino = %lu, pgofs = %u, blkaddr = %u", 1212 TP_printk("dev = (%d,%d), ino = %lu, pgofs = %u, "
1213 "blkaddr = %u, len = %u",
1156 show_dev_ino(__entry), 1214 show_dev_ino(__entry),
1157 __entry->pgofs, 1215 __entry->pgofs,
1158 __entry->blk) 1216 __entry->blk,
1217 __entry->len)
1159); 1218);
1160 1219
1161TRACE_EVENT(f2fs_shrink_extent_tree, 1220TRACE_EVENT(f2fs_shrink_extent_tree,