diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2011-08-01 19:56:03 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2011-08-01 19:56:03 -0400 |
commit | 60ad4466821a96913a9b567115e194ed1087c2d7 (patch) | |
tree | cd488ba72a60f856b85a467763fb633cbe7ef2d9 /include/trace | |
parent | 1b8e94993c4752d98c33903aa836acc15f7e6d5c (diff) | |
parent | 79a77c5ac34cc27ccbfbdf7113b41cdd93534eab (diff) |
Merge branch 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4
* 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4: (60 commits)
ext4: prevent memory leaks from ext4_mb_init_backend() on error path
ext4: use EXT4_BAD_INO for buddy cache to avoid colliding with valid inode #
ext4: use ext4_msg() instead of printk in mballoc
ext4: use ext4_kvzalloc()/ext4_kvmalloc() for s_group_desc and s_group_info
ext4: introduce ext4_kvmalloc(), ext4_kzalloc(), and ext4_kvfree()
ext4: use the correct error exit path in ext4_init_inode_table()
ext4: add missing kfree() on error return path in add_new_gdb()
ext4: change umode_t in tracepoint headers to be an explicit __u16
ext4: fix races in ext4_sync_parent()
ext4: Fix overflow caused by missing cast in ext4_fallocate()
ext4: add action of moving index in ext4_ext_rm_idx for Punch Hole
ext4: simplify parameters of reserve_backup_gdb()
ext4: simplify parameters of add_new_gdb()
ext4: remove lock_buffer in bclean() and setup_new_group_blocks()
ext4: simplify journal handling in setup_new_group_blocks()
ext4: let setup_new_group_blocks() set multiple bits at a time
ext4: fix a typo in ext4_group_extend()
ext4: let ext4_group_add_blocks() handle 0 blocks quickly
ext4: let ext4_group_add_blocks() return an error code
ext4: rename ext4_add_groupblocks() to ext4_group_add_blocks()
...
Fix up conflict in fs/ext4/inode.c: commit aacfc19c626e ("fs: simplify
the blockdev_direct_IO prototype") had changed the ext4_ind_direct_IO()
function for the new simplified calling convention, while commit
dae1e52cb126 ("ext4: move ext4_ind_* functions from inode.c to
indirect.c") moved the function to another file.
Diffstat (limited to 'include/trace')
-rw-r--r-- | include/trace/events/ext4.h | 87 | ||||
-rw-r--r-- | include/trace/events/jbd2.h | 36 |
2 files changed, 98 insertions, 25 deletions
diff --git a/include/trace/events/ext4.h b/include/trace/events/ext4.h index 6363193a3418..b50a54736242 100644 --- a/include/trace/events/ext4.h +++ b/include/trace/events/ext4.h | |||
@@ -23,7 +23,7 @@ TRACE_EVENT(ext4_free_inode, | |||
23 | TP_STRUCT__entry( | 23 | TP_STRUCT__entry( |
24 | __field( dev_t, dev ) | 24 | __field( dev_t, dev ) |
25 | __field( ino_t, ino ) | 25 | __field( ino_t, ino ) |
26 | __field( umode_t, mode ) | 26 | __field( __u16, mode ) |
27 | __field( uid_t, uid ) | 27 | __field( uid_t, uid ) |
28 | __field( gid_t, gid ) | 28 | __field( gid_t, gid ) |
29 | __field( __u64, blocks ) | 29 | __field( __u64, blocks ) |
@@ -52,7 +52,7 @@ TRACE_EVENT(ext4_request_inode, | |||
52 | TP_STRUCT__entry( | 52 | TP_STRUCT__entry( |
53 | __field( dev_t, dev ) | 53 | __field( dev_t, dev ) |
54 | __field( ino_t, dir ) | 54 | __field( ino_t, dir ) |
55 | __field( umode_t, mode ) | 55 | __field( __u16, mode ) |
56 | ), | 56 | ), |
57 | 57 | ||
58 | TP_fast_assign( | 58 | TP_fast_assign( |
@@ -75,7 +75,7 @@ TRACE_EVENT(ext4_allocate_inode, | |||
75 | __field( dev_t, dev ) | 75 | __field( dev_t, dev ) |
76 | __field( ino_t, ino ) | 76 | __field( ino_t, ino ) |
77 | __field( ino_t, dir ) | 77 | __field( ino_t, dir ) |
78 | __field( umode_t, mode ) | 78 | __field( __u16, mode ) |
79 | ), | 79 | ), |
80 | 80 | ||
81 | TP_fast_assign( | 81 | TP_fast_assign( |
@@ -725,7 +725,7 @@ TRACE_EVENT(ext4_free_blocks, | |||
725 | TP_STRUCT__entry( | 725 | TP_STRUCT__entry( |
726 | __field( dev_t, dev ) | 726 | __field( dev_t, dev ) |
727 | __field( ino_t, ino ) | 727 | __field( ino_t, ino ) |
728 | __field( umode_t, mode ) | 728 | __field( __u16, mode ) |
729 | __field( __u64, block ) | 729 | __field( __u64, block ) |
730 | __field( unsigned long, count ) | 730 | __field( unsigned long, count ) |
731 | __field( int, flags ) | 731 | __field( int, flags ) |
@@ -1012,7 +1012,7 @@ TRACE_EVENT(ext4_forget, | |||
1012 | TP_STRUCT__entry( | 1012 | TP_STRUCT__entry( |
1013 | __field( dev_t, dev ) | 1013 | __field( dev_t, dev ) |
1014 | __field( ino_t, ino ) | 1014 | __field( ino_t, ino ) |
1015 | __field( umode_t, mode ) | 1015 | __field( __u16, mode ) |
1016 | __field( int, is_metadata ) | 1016 | __field( int, is_metadata ) |
1017 | __field( __u64, block ) | 1017 | __field( __u64, block ) |
1018 | ), | 1018 | ), |
@@ -1039,7 +1039,7 @@ TRACE_EVENT(ext4_da_update_reserve_space, | |||
1039 | TP_STRUCT__entry( | 1039 | TP_STRUCT__entry( |
1040 | __field( dev_t, dev ) | 1040 | __field( dev_t, dev ) |
1041 | __field( ino_t, ino ) | 1041 | __field( ino_t, ino ) |
1042 | __field( umode_t, mode ) | 1042 | __field( __u16, mode ) |
1043 | __field( __u64, i_blocks ) | 1043 | __field( __u64, i_blocks ) |
1044 | __field( int, used_blocks ) | 1044 | __field( int, used_blocks ) |
1045 | __field( int, reserved_data_blocks ) | 1045 | __field( int, reserved_data_blocks ) |
@@ -1076,7 +1076,7 @@ TRACE_EVENT(ext4_da_reserve_space, | |||
1076 | TP_STRUCT__entry( | 1076 | TP_STRUCT__entry( |
1077 | __field( dev_t, dev ) | 1077 | __field( dev_t, dev ) |
1078 | __field( ino_t, ino ) | 1078 | __field( ino_t, ino ) |
1079 | __field( umode_t, mode ) | 1079 | __field( __u16, mode ) |
1080 | __field( __u64, i_blocks ) | 1080 | __field( __u64, i_blocks ) |
1081 | __field( int, md_needed ) | 1081 | __field( int, md_needed ) |
1082 | __field( int, reserved_data_blocks ) | 1082 | __field( int, reserved_data_blocks ) |
@@ -1110,7 +1110,7 @@ TRACE_EVENT(ext4_da_release_space, | |||
1110 | TP_STRUCT__entry( | 1110 | TP_STRUCT__entry( |
1111 | __field( dev_t, dev ) | 1111 | __field( dev_t, dev ) |
1112 | __field( ino_t, ino ) | 1112 | __field( ino_t, ino ) |
1113 | __field( umode_t, mode ) | 1113 | __field( __u16, mode ) |
1114 | __field( __u64, i_blocks ) | 1114 | __field( __u64, i_blocks ) |
1115 | __field( int, freed_blocks ) | 1115 | __field( int, freed_blocks ) |
1116 | __field( int, reserved_data_blocks ) | 1116 | __field( int, reserved_data_blocks ) |
@@ -1518,6 +1518,77 @@ TRACE_EVENT(ext4_load_inode, | |||
1518 | (unsigned long) __entry->ino) | 1518 | (unsigned long) __entry->ino) |
1519 | ); | 1519 | ); |
1520 | 1520 | ||
1521 | TRACE_EVENT(ext4_journal_start, | ||
1522 | TP_PROTO(struct super_block *sb, int nblocks, unsigned long IP), | ||
1523 | |||
1524 | TP_ARGS(sb, nblocks, IP), | ||
1525 | |||
1526 | TP_STRUCT__entry( | ||
1527 | __field( dev_t, dev ) | ||
1528 | __field( int, nblocks ) | ||
1529 | __field(unsigned long, ip ) | ||
1530 | ), | ||
1531 | |||
1532 | TP_fast_assign( | ||
1533 | __entry->dev = sb->s_dev; | ||
1534 | __entry->nblocks = nblocks; | ||
1535 | __entry->ip = IP; | ||
1536 | ), | ||
1537 | |||
1538 | TP_printk("dev %d,%d nblocks %d caller %pF", | ||
1539 | MAJOR(__entry->dev), MINOR(__entry->dev), | ||
1540 | __entry->nblocks, (void *)__entry->ip) | ||
1541 | ); | ||
1542 | |||
1543 | DECLARE_EVENT_CLASS(ext4__trim, | ||
1544 | TP_PROTO(struct super_block *sb, | ||
1545 | ext4_group_t group, | ||
1546 | ext4_grpblk_t start, | ||
1547 | ext4_grpblk_t len), | ||
1548 | |||
1549 | TP_ARGS(sb, group, start, len), | ||
1550 | |||
1551 | TP_STRUCT__entry( | ||
1552 | __field( int, dev_major ) | ||
1553 | __field( int, dev_minor ) | ||
1554 | __field( __u32, group ) | ||
1555 | __field( int, start ) | ||
1556 | __field( int, len ) | ||
1557 | ), | ||
1558 | |||
1559 | TP_fast_assign( | ||
1560 | __entry->dev_major = MAJOR(sb->s_dev); | ||
1561 | __entry->dev_minor = MINOR(sb->s_dev); | ||
1562 | __entry->group = group; | ||
1563 | __entry->start = start; | ||
1564 | __entry->len = len; | ||
1565 | ), | ||
1566 | |||
1567 | TP_printk("dev %d,%d group %u, start %d, len %d", | ||
1568 | __entry->dev_major, __entry->dev_minor, | ||
1569 | __entry->group, __entry->start, __entry->len) | ||
1570 | ); | ||
1571 | |||
1572 | DEFINE_EVENT(ext4__trim, ext4_trim_extent, | ||
1573 | |||
1574 | TP_PROTO(struct super_block *sb, | ||
1575 | ext4_group_t group, | ||
1576 | ext4_grpblk_t start, | ||
1577 | ext4_grpblk_t len), | ||
1578 | |||
1579 | TP_ARGS(sb, group, start, len) | ||
1580 | ); | ||
1581 | |||
1582 | DEFINE_EVENT(ext4__trim, ext4_trim_all_free, | ||
1583 | |||
1584 | TP_PROTO(struct super_block *sb, | ||
1585 | ext4_group_t group, | ||
1586 | ext4_grpblk_t start, | ||
1587 | ext4_grpblk_t len), | ||
1588 | |||
1589 | TP_ARGS(sb, group, start, len) | ||
1590 | ); | ||
1591 | |||
1521 | #endif /* _TRACE_EXT4_H */ | 1592 | #endif /* _TRACE_EXT4_H */ |
1522 | 1593 | ||
1523 | /* This part must be outside protection */ | 1594 | /* This part must be outside protection */ |
diff --git a/include/trace/events/jbd2.h b/include/trace/events/jbd2.h index bf16545cc977..75964412ddbb 100644 --- a/include/trace/events/jbd2.h +++ b/include/trace/events/jbd2.h | |||
@@ -26,8 +26,8 @@ TRACE_EVENT(jbd2_checkpoint, | |||
26 | __entry->result = result; | 26 | __entry->result = result; |
27 | ), | 27 | ), |
28 | 28 | ||
29 | TP_printk("dev %s result %d", | 29 | TP_printk("dev %d,%d result %d", |
30 | jbd2_dev_to_name(__entry->dev), __entry->result) | 30 | MAJOR(__entry->dev), MINOR(__entry->dev), __entry->result) |
31 | ); | 31 | ); |
32 | 32 | ||
33 | DECLARE_EVENT_CLASS(jbd2_commit, | 33 | DECLARE_EVENT_CLASS(jbd2_commit, |
@@ -48,9 +48,9 @@ DECLARE_EVENT_CLASS(jbd2_commit, | |||
48 | __entry->transaction = commit_transaction->t_tid; | 48 | __entry->transaction = commit_transaction->t_tid; |
49 | ), | 49 | ), |
50 | 50 | ||
51 | TP_printk("dev %s transaction %d sync %d", | 51 | TP_printk("dev %d,%d transaction %d sync %d", |
52 | jbd2_dev_to_name(__entry->dev), __entry->transaction, | 52 | MAJOR(__entry->dev), MINOR(__entry->dev), |
53 | __entry->sync_commit) | 53 | __entry->transaction, __entry->sync_commit) |
54 | ); | 54 | ); |
55 | 55 | ||
56 | DEFINE_EVENT(jbd2_commit, jbd2_start_commit, | 56 | DEFINE_EVENT(jbd2_commit, jbd2_start_commit, |
@@ -100,9 +100,9 @@ TRACE_EVENT(jbd2_end_commit, | |||
100 | __entry->head = journal->j_tail_sequence; | 100 | __entry->head = journal->j_tail_sequence; |
101 | ), | 101 | ), |
102 | 102 | ||
103 | TP_printk("dev %s transaction %d sync %d head %d", | 103 | TP_printk("dev %d,%d transaction %d sync %d head %d", |
104 | jbd2_dev_to_name(__entry->dev), __entry->transaction, | 104 | MAJOR(__entry->dev), MINOR(__entry->dev), |
105 | __entry->sync_commit, __entry->head) | 105 | __entry->transaction, __entry->sync_commit, __entry->head) |
106 | ); | 106 | ); |
107 | 107 | ||
108 | TRACE_EVENT(jbd2_submit_inode_data, | 108 | TRACE_EVENT(jbd2_submit_inode_data, |
@@ -120,8 +120,9 @@ TRACE_EVENT(jbd2_submit_inode_data, | |||
120 | __entry->ino = inode->i_ino; | 120 | __entry->ino = inode->i_ino; |
121 | ), | 121 | ), |
122 | 122 | ||
123 | TP_printk("dev %s ino %lu", | 123 | TP_printk("dev %d,%d ino %lu", |
124 | jbd2_dev_to_name(__entry->dev), (unsigned long) __entry->ino) | 124 | MAJOR(__entry->dev), MINOR(__entry->dev), |
125 | (unsigned long) __entry->ino) | ||
125 | ); | 126 | ); |
126 | 127 | ||
127 | TRACE_EVENT(jbd2_run_stats, | 128 | TRACE_EVENT(jbd2_run_stats, |
@@ -156,9 +157,9 @@ TRACE_EVENT(jbd2_run_stats, | |||
156 | __entry->blocks_logged = stats->rs_blocks_logged; | 157 | __entry->blocks_logged = stats->rs_blocks_logged; |
157 | ), | 158 | ), |
158 | 159 | ||
159 | TP_printk("dev %s tid %lu wait %u running %u locked %u flushing %u " | 160 | TP_printk("dev %d,%d tid %lu wait %u running %u locked %u flushing %u " |
160 | "logging %u handle_count %u blocks %u blocks_logged %u", | 161 | "logging %u handle_count %u blocks %u blocks_logged %u", |
161 | jbd2_dev_to_name(__entry->dev), __entry->tid, | 162 | MAJOR(__entry->dev), MINOR(__entry->dev), __entry->tid, |
162 | jiffies_to_msecs(__entry->wait), | 163 | jiffies_to_msecs(__entry->wait), |
163 | jiffies_to_msecs(__entry->running), | 164 | jiffies_to_msecs(__entry->running), |
164 | jiffies_to_msecs(__entry->locked), | 165 | jiffies_to_msecs(__entry->locked), |
@@ -192,9 +193,9 @@ TRACE_EVENT(jbd2_checkpoint_stats, | |||
192 | __entry->dropped = stats->cs_dropped; | 193 | __entry->dropped = stats->cs_dropped; |
193 | ), | 194 | ), |
194 | 195 | ||
195 | TP_printk("dev %s tid %lu chp_time %u forced_to_close %u " | 196 | TP_printk("dev %d,%d tid %lu chp_time %u forced_to_close %u " |
196 | "written %u dropped %u", | 197 | "written %u dropped %u", |
197 | jbd2_dev_to_name(__entry->dev), __entry->tid, | 198 | MAJOR(__entry->dev), MINOR(__entry->dev), __entry->tid, |
198 | jiffies_to_msecs(__entry->chp_time), | 199 | jiffies_to_msecs(__entry->chp_time), |
199 | __entry->forced_to_close, __entry->written, __entry->dropped) | 200 | __entry->forced_to_close, __entry->written, __entry->dropped) |
200 | ); | 201 | ); |
@@ -222,9 +223,10 @@ TRACE_EVENT(jbd2_cleanup_journal_tail, | |||
222 | __entry->freed = freed; | 223 | __entry->freed = freed; |
223 | ), | 224 | ), |
224 | 225 | ||
225 | TP_printk("dev %s from %u to %u offset %lu freed %lu", | 226 | TP_printk("dev %d,%d from %u to %u offset %lu freed %lu", |
226 | jbd2_dev_to_name(__entry->dev), __entry->tail_sequence, | 227 | MAJOR(__entry->dev), MINOR(__entry->dev), |
227 | __entry->first_tid, __entry->block_nr, __entry->freed) | 228 | __entry->tail_sequence, __entry->first_tid, |
229 | __entry->block_nr, __entry->freed) | ||
228 | ); | 230 | ); |
229 | 231 | ||
230 | #endif /* _TRACE_JBD2_H */ | 232 | #endif /* _TRACE_JBD2_H */ |