diff options
author | Jiri Kosina <jkosina@suse.cz> | 2012-02-03 17:12:42 -0500 |
---|---|---|
committer | Jiri Kosina <jkosina@suse.cz> | 2012-02-03 17:13:05 -0500 |
commit | 972c5ae961d6e5103e2b33d935cfa4145fd47140 (patch) | |
tree | 350b2a76b979ba8766c09838617df67ff330eca0 /include/trace | |
parent | 5196d20305d5e30d871111d3a876cf067dd94255 (diff) | |
parent | 7c7ed8ec337bf5f62cc5287a6eb6b2f1b7504c2f (diff) |
Merge branch 'master' into for-next
Sync with Linus' tree to be able to apply patch to a newer
code (namely drivers/gpu/drm/gma500/psb_intel_lvds.c)
Diffstat (limited to 'include/trace')
-rw-r--r-- | include/trace/events/btrfs.h | 203 | ||||
-rw-r--r-- | include/trace/events/ext4.h | 6 | ||||
-rw-r--r-- | include/trace/events/kmem.h | 4 | ||||
-rw-r--r-- | include/trace/events/oom.h | 33 | ||||
-rw-r--r-- | include/trace/events/regmap.h | 9 | ||||
-rw-r--r-- | include/trace/events/task.h | 61 | ||||
-rw-r--r-- | include/trace/events/vmscan.h | 22 | ||||
-rw-r--r-- | include/trace/events/writeback.h | 14 |
8 files changed, 336 insertions, 16 deletions
diff --git a/include/trace/events/btrfs.h b/include/trace/events/btrfs.h index b31702ac15be..84f3001a568d 100644 --- a/include/trace/events/btrfs.h +++ b/include/trace/events/btrfs.h | |||
@@ -16,6 +16,8 @@ struct btrfs_delayed_ref_node; | |||
16 | struct btrfs_delayed_tree_ref; | 16 | struct btrfs_delayed_tree_ref; |
17 | struct btrfs_delayed_data_ref; | 17 | struct btrfs_delayed_data_ref; |
18 | struct btrfs_delayed_ref_head; | 18 | struct btrfs_delayed_ref_head; |
19 | struct btrfs_block_group_cache; | ||
20 | struct btrfs_free_cluster; | ||
19 | struct map_lookup; | 21 | struct map_lookup; |
20 | struct extent_buffer; | 22 | struct extent_buffer; |
21 | 23 | ||
@@ -44,6 +46,17 @@ struct extent_buffer; | |||
44 | obj, ((obj >= BTRFS_DATA_RELOC_TREE_OBJECTID) || \ | 46 | obj, ((obj >= BTRFS_DATA_RELOC_TREE_OBJECTID) || \ |
45 | (obj <= BTRFS_CSUM_TREE_OBJECTID )) ? __show_root_type(obj) : "-" | 47 | (obj <= BTRFS_CSUM_TREE_OBJECTID )) ? __show_root_type(obj) : "-" |
46 | 48 | ||
49 | #define BTRFS_GROUP_FLAGS \ | ||
50 | { BTRFS_BLOCK_GROUP_DATA, "DATA"}, \ | ||
51 | { BTRFS_BLOCK_GROUP_SYSTEM, "SYSTEM"}, \ | ||
52 | { BTRFS_BLOCK_GROUP_METADATA, "METADATA"}, \ | ||
53 | { BTRFS_BLOCK_GROUP_RAID0, "RAID0"}, \ | ||
54 | { BTRFS_BLOCK_GROUP_RAID1, "RAID1"}, \ | ||
55 | { BTRFS_BLOCK_GROUP_DUP, "DUP"}, \ | ||
56 | { BTRFS_BLOCK_GROUP_RAID10, "RAID10"} | ||
57 | |||
58 | #define BTRFS_UUID_SIZE 16 | ||
59 | |||
47 | TRACE_EVENT(btrfs_transaction_commit, | 60 | TRACE_EVENT(btrfs_transaction_commit, |
48 | 61 | ||
49 | TP_PROTO(struct btrfs_root *root), | 62 | TP_PROTO(struct btrfs_root *root), |
@@ -621,6 +634,34 @@ TRACE_EVENT(btrfs_cow_block, | |||
621 | __entry->cow_level) | 634 | __entry->cow_level) |
622 | ); | 635 | ); |
623 | 636 | ||
637 | TRACE_EVENT(btrfs_space_reservation, | ||
638 | |||
639 | TP_PROTO(struct btrfs_fs_info *fs_info, char *type, u64 val, | ||
640 | u64 bytes, int reserve), | ||
641 | |||
642 | TP_ARGS(fs_info, type, val, bytes, reserve), | ||
643 | |||
644 | TP_STRUCT__entry( | ||
645 | __array( u8, fsid, BTRFS_UUID_SIZE ) | ||
646 | __string( type, type ) | ||
647 | __field( u64, val ) | ||
648 | __field( u64, bytes ) | ||
649 | __field( int, reserve ) | ||
650 | ), | ||
651 | |||
652 | TP_fast_assign( | ||
653 | memcpy(__entry->fsid, fs_info->fsid, BTRFS_UUID_SIZE); | ||
654 | __assign_str(type, type); | ||
655 | __entry->val = val; | ||
656 | __entry->bytes = bytes; | ||
657 | __entry->reserve = reserve; | ||
658 | ), | ||
659 | |||
660 | TP_printk("%pU: %s: %Lu %s %Lu", __entry->fsid, __get_str(type), | ||
661 | __entry->val, __entry->reserve ? "reserve" : "release", | ||
662 | __entry->bytes) | ||
663 | ); | ||
664 | |||
624 | DECLARE_EVENT_CLASS(btrfs__reserved_extent, | 665 | DECLARE_EVENT_CLASS(btrfs__reserved_extent, |
625 | 666 | ||
626 | TP_PROTO(struct btrfs_root *root, u64 start, u64 len), | 667 | TP_PROTO(struct btrfs_root *root, u64 start, u64 len), |
@@ -659,6 +700,168 @@ DEFINE_EVENT(btrfs__reserved_extent, btrfs_reserved_extent_free, | |||
659 | TP_ARGS(root, start, len) | 700 | TP_ARGS(root, start, len) |
660 | ); | 701 | ); |
661 | 702 | ||
703 | TRACE_EVENT(find_free_extent, | ||
704 | |||
705 | TP_PROTO(struct btrfs_root *root, u64 num_bytes, u64 empty_size, | ||
706 | u64 data), | ||
707 | |||
708 | TP_ARGS(root, num_bytes, empty_size, data), | ||
709 | |||
710 | TP_STRUCT__entry( | ||
711 | __field( u64, root_objectid ) | ||
712 | __field( u64, num_bytes ) | ||
713 | __field( u64, empty_size ) | ||
714 | __field( u64, data ) | ||
715 | ), | ||
716 | |||
717 | TP_fast_assign( | ||
718 | __entry->root_objectid = root->root_key.objectid; | ||
719 | __entry->num_bytes = num_bytes; | ||
720 | __entry->empty_size = empty_size; | ||
721 | __entry->data = data; | ||
722 | ), | ||
723 | |||
724 | TP_printk("root = %Lu(%s), len = %Lu, empty_size = %Lu, " | ||
725 | "flags = %Lu(%s)", show_root_type(__entry->root_objectid), | ||
726 | __entry->num_bytes, __entry->empty_size, __entry->data, | ||
727 | __print_flags((unsigned long)__entry->data, "|", | ||
728 | BTRFS_GROUP_FLAGS)) | ||
729 | ); | ||
730 | |||
731 | DECLARE_EVENT_CLASS(btrfs__reserve_extent, | ||
732 | |||
733 | TP_PROTO(struct btrfs_root *root, | ||
734 | struct btrfs_block_group_cache *block_group, u64 start, | ||
735 | u64 len), | ||
736 | |||
737 | TP_ARGS(root, block_group, start, len), | ||
738 | |||
739 | TP_STRUCT__entry( | ||
740 | __field( u64, root_objectid ) | ||
741 | __field( u64, bg_objectid ) | ||
742 | __field( u64, flags ) | ||
743 | __field( u64, start ) | ||
744 | __field( u64, len ) | ||
745 | ), | ||
746 | |||
747 | TP_fast_assign( | ||
748 | __entry->root_objectid = root->root_key.objectid; | ||
749 | __entry->bg_objectid = block_group->key.objectid; | ||
750 | __entry->flags = block_group->flags; | ||
751 | __entry->start = start; | ||
752 | __entry->len = len; | ||
753 | ), | ||
754 | |||
755 | TP_printk("root = %Lu(%s), block_group = %Lu, flags = %Lu(%s), " | ||
756 | "start = %Lu, len = %Lu", | ||
757 | show_root_type(__entry->root_objectid), __entry->bg_objectid, | ||
758 | __entry->flags, __print_flags((unsigned long)__entry->flags, | ||
759 | "|", BTRFS_GROUP_FLAGS), | ||
760 | __entry->start, __entry->len) | ||
761 | ); | ||
762 | |||
763 | DEFINE_EVENT(btrfs__reserve_extent, btrfs_reserve_extent, | ||
764 | |||
765 | TP_PROTO(struct btrfs_root *root, | ||
766 | struct btrfs_block_group_cache *block_group, u64 start, | ||
767 | u64 len), | ||
768 | |||
769 | TP_ARGS(root, block_group, start, len) | ||
770 | ); | ||
771 | |||
772 | DEFINE_EVENT(btrfs__reserve_extent, btrfs_reserve_extent_cluster, | ||
773 | |||
774 | TP_PROTO(struct btrfs_root *root, | ||
775 | struct btrfs_block_group_cache *block_group, u64 start, | ||
776 | u64 len), | ||
777 | |||
778 | TP_ARGS(root, block_group, start, len) | ||
779 | ); | ||
780 | |||
781 | TRACE_EVENT(btrfs_find_cluster, | ||
782 | |||
783 | TP_PROTO(struct btrfs_block_group_cache *block_group, u64 start, | ||
784 | u64 bytes, u64 empty_size, u64 min_bytes), | ||
785 | |||
786 | TP_ARGS(block_group, start, bytes, empty_size, min_bytes), | ||
787 | |||
788 | TP_STRUCT__entry( | ||
789 | __field( u64, bg_objectid ) | ||
790 | __field( u64, flags ) | ||
791 | __field( u64, start ) | ||
792 | __field( u64, bytes ) | ||
793 | __field( u64, empty_size ) | ||
794 | __field( u64, min_bytes ) | ||
795 | ), | ||
796 | |||
797 | TP_fast_assign( | ||
798 | __entry->bg_objectid = block_group->key.objectid; | ||
799 | __entry->flags = block_group->flags; | ||
800 | __entry->start = start; | ||
801 | __entry->bytes = bytes; | ||
802 | __entry->empty_size = empty_size; | ||
803 | __entry->min_bytes = min_bytes; | ||
804 | ), | ||
805 | |||
806 | TP_printk("block_group = %Lu, flags = %Lu(%s), start = %Lu, len = %Lu," | ||
807 | " empty_size = %Lu, min_bytes = %Lu", __entry->bg_objectid, | ||
808 | __entry->flags, | ||
809 | __print_flags((unsigned long)__entry->flags, "|", | ||
810 | BTRFS_GROUP_FLAGS), __entry->start, | ||
811 | __entry->bytes, __entry->empty_size, __entry->min_bytes) | ||
812 | ); | ||
813 | |||
814 | TRACE_EVENT(btrfs_failed_cluster_setup, | ||
815 | |||
816 | TP_PROTO(struct btrfs_block_group_cache *block_group), | ||
817 | |||
818 | TP_ARGS(block_group), | ||
819 | |||
820 | TP_STRUCT__entry( | ||
821 | __field( u64, bg_objectid ) | ||
822 | ), | ||
823 | |||
824 | TP_fast_assign( | ||
825 | __entry->bg_objectid = block_group->key.objectid; | ||
826 | ), | ||
827 | |||
828 | TP_printk("block_group = %Lu", __entry->bg_objectid) | ||
829 | ); | ||
830 | |||
831 | TRACE_EVENT(btrfs_setup_cluster, | ||
832 | |||
833 | TP_PROTO(struct btrfs_block_group_cache *block_group, | ||
834 | struct btrfs_free_cluster *cluster, u64 size, int bitmap), | ||
835 | |||
836 | TP_ARGS(block_group, cluster, size, bitmap), | ||
837 | |||
838 | TP_STRUCT__entry( | ||
839 | __field( u64, bg_objectid ) | ||
840 | __field( u64, flags ) | ||
841 | __field( u64, start ) | ||
842 | __field( u64, max_size ) | ||
843 | __field( u64, size ) | ||
844 | __field( int, bitmap ) | ||
845 | ), | ||
846 | |||
847 | TP_fast_assign( | ||
848 | __entry->bg_objectid = block_group->key.objectid; | ||
849 | __entry->flags = block_group->flags; | ||
850 | __entry->start = cluster->window_start; | ||
851 | __entry->max_size = cluster->max_size; | ||
852 | __entry->size = size; | ||
853 | __entry->bitmap = bitmap; | ||
854 | ), | ||
855 | |||
856 | TP_printk("block_group = %Lu, flags = %Lu(%s), window_start = %Lu, " | ||
857 | "size = %Lu, max_size = %Lu, bitmap = %d", | ||
858 | __entry->bg_objectid, | ||
859 | __entry->flags, | ||
860 | __print_flags((unsigned long)__entry->flags, "|", | ||
861 | BTRFS_GROUP_FLAGS), __entry->start, | ||
862 | __entry->size, __entry->max_size, __entry->bitmap) | ||
863 | ); | ||
864 | |||
662 | #endif /* _TRACE_BTRFS_H */ | 865 | #endif /* _TRACE_BTRFS_H */ |
663 | 866 | ||
664 | /* This part must be outside protection */ | 867 | /* This part must be outside protection */ |
diff --git a/include/trace/events/ext4.h b/include/trace/events/ext4.h index 748ff7cbe555..319538bf17d2 100644 --- a/include/trace/events/ext4.h +++ b/include/trace/events/ext4.h | |||
@@ -573,9 +573,9 @@ TRACE_EVENT(ext4_mb_release_inode_pa, | |||
573 | ); | 573 | ); |
574 | 574 | ||
575 | TRACE_EVENT(ext4_mb_release_group_pa, | 575 | TRACE_EVENT(ext4_mb_release_group_pa, |
576 | TP_PROTO(struct ext4_prealloc_space *pa), | 576 | TP_PROTO(struct super_block *sb, struct ext4_prealloc_space *pa), |
577 | 577 | ||
578 | TP_ARGS(pa), | 578 | TP_ARGS(sb, pa), |
579 | 579 | ||
580 | TP_STRUCT__entry( | 580 | TP_STRUCT__entry( |
581 | __field( dev_t, dev ) | 581 | __field( dev_t, dev ) |
@@ -585,7 +585,7 @@ TRACE_EVENT(ext4_mb_release_group_pa, | |||
585 | ), | 585 | ), |
586 | 586 | ||
587 | TP_fast_assign( | 587 | TP_fast_assign( |
588 | __entry->dev = pa->pa_inode->i_sb->s_dev; | 588 | __entry->dev = sb->s_dev; |
589 | __entry->pa_pstart = pa->pa_pstart; | 589 | __entry->pa_pstart = pa->pa_pstart; |
590 | __entry->pa_len = pa->pa_len; | 590 | __entry->pa_len = pa->pa_len; |
591 | ), | 591 | ), |
diff --git a/include/trace/events/kmem.h b/include/trace/events/kmem.h index a9c87ad8331c..5f889f16b0c8 100644 --- a/include/trace/events/kmem.h +++ b/include/trace/events/kmem.h | |||
@@ -147,7 +147,7 @@ DEFINE_EVENT(kmem_free, kmem_cache_free, | |||
147 | TP_ARGS(call_site, ptr) | 147 | TP_ARGS(call_site, ptr) |
148 | ); | 148 | ); |
149 | 149 | ||
150 | TRACE_EVENT(mm_page_free_direct, | 150 | TRACE_EVENT(mm_page_free, |
151 | 151 | ||
152 | TP_PROTO(struct page *page, unsigned int order), | 152 | TP_PROTO(struct page *page, unsigned int order), |
153 | 153 | ||
@@ -169,7 +169,7 @@ TRACE_EVENT(mm_page_free_direct, | |||
169 | __entry->order) | 169 | __entry->order) |
170 | ); | 170 | ); |
171 | 171 | ||
172 | TRACE_EVENT(mm_pagevec_free, | 172 | TRACE_EVENT(mm_page_free_batched, |
173 | 173 | ||
174 | TP_PROTO(struct page *page, int cold), | 174 | TP_PROTO(struct page *page, int cold), |
175 | 175 | ||
diff --git a/include/trace/events/oom.h b/include/trace/events/oom.h new file mode 100644 index 000000000000..dd4ba3b92002 --- /dev/null +++ b/include/trace/events/oom.h | |||
@@ -0,0 +1,33 @@ | |||
1 | #undef TRACE_SYSTEM | ||
2 | #define TRACE_SYSTEM oom | ||
3 | |||
4 | #if !defined(_TRACE_OOM_H) || defined(TRACE_HEADER_MULTI_READ) | ||
5 | #define _TRACE_OOM_H | ||
6 | #include <linux/tracepoint.h> | ||
7 | |||
8 | TRACE_EVENT(oom_score_adj_update, | ||
9 | |||
10 | TP_PROTO(struct task_struct *task), | ||
11 | |||
12 | TP_ARGS(task), | ||
13 | |||
14 | TP_STRUCT__entry( | ||
15 | __field( pid_t, pid) | ||
16 | __array( char, comm, TASK_COMM_LEN ) | ||
17 | __field( int, oom_score_adj) | ||
18 | ), | ||
19 | |||
20 | TP_fast_assign( | ||
21 | __entry->pid = task->pid; | ||
22 | memcpy(__entry->comm, task->comm, TASK_COMM_LEN); | ||
23 | __entry->oom_score_adj = task->signal->oom_score_adj; | ||
24 | ), | ||
25 | |||
26 | TP_printk("pid=%d comm=%s oom_score_adj=%d", | ||
27 | __entry->pid, __entry->comm, __entry->oom_score_adj) | ||
28 | ); | ||
29 | |||
30 | #endif | ||
31 | |||
32 | /* This part must be outside protection */ | ||
33 | #include <trace/define_trace.h> | ||
diff --git a/include/trace/events/regmap.h b/include/trace/events/regmap.h index 1e3193b8fcc8..12fbf43524e9 100644 --- a/include/trace/events/regmap.h +++ b/include/trace/events/regmap.h | |||
@@ -55,6 +55,15 @@ DEFINE_EVENT(regmap_reg, regmap_reg_read, | |||
55 | 55 | ||
56 | ); | 56 | ); |
57 | 57 | ||
58 | DEFINE_EVENT(regmap_reg, regmap_reg_read_cache, | ||
59 | |||
60 | TP_PROTO(struct device *dev, unsigned int reg, | ||
61 | unsigned int val), | ||
62 | |||
63 | TP_ARGS(dev, reg, val) | ||
64 | |||
65 | ); | ||
66 | |||
58 | DECLARE_EVENT_CLASS(regmap_block, | 67 | DECLARE_EVENT_CLASS(regmap_block, |
59 | 68 | ||
60 | TP_PROTO(struct device *dev, unsigned int reg, int count), | 69 | TP_PROTO(struct device *dev, unsigned int reg, int count), |
diff --git a/include/trace/events/task.h b/include/trace/events/task.h new file mode 100644 index 000000000000..b53add02e929 --- /dev/null +++ b/include/trace/events/task.h | |||
@@ -0,0 +1,61 @@ | |||
1 | #undef TRACE_SYSTEM | ||
2 | #define TRACE_SYSTEM task | ||
3 | |||
4 | #if !defined(_TRACE_TASK_H) || defined(TRACE_HEADER_MULTI_READ) | ||
5 | #define _TRACE_TASK_H | ||
6 | #include <linux/tracepoint.h> | ||
7 | |||
8 | TRACE_EVENT(task_newtask, | ||
9 | |||
10 | TP_PROTO(struct task_struct *task, unsigned long clone_flags), | ||
11 | |||
12 | TP_ARGS(task, clone_flags), | ||
13 | |||
14 | TP_STRUCT__entry( | ||
15 | __field( pid_t, pid) | ||
16 | __array( char, comm, TASK_COMM_LEN) | ||
17 | __field( unsigned long, clone_flags) | ||
18 | __field( int, oom_score_adj) | ||
19 | ), | ||
20 | |||
21 | TP_fast_assign( | ||
22 | __entry->pid = task->pid; | ||
23 | memcpy(__entry->comm, task->comm, TASK_COMM_LEN); | ||
24 | __entry->clone_flags = clone_flags; | ||
25 | __entry->oom_score_adj = task->signal->oom_score_adj; | ||
26 | ), | ||
27 | |||
28 | TP_printk("pid=%d comm=%s clone_flags=%lx oom_score_adj=%d", | ||
29 | __entry->pid, __entry->comm, | ||
30 | __entry->clone_flags, __entry->oom_score_adj) | ||
31 | ); | ||
32 | |||
33 | TRACE_EVENT(task_rename, | ||
34 | |||
35 | TP_PROTO(struct task_struct *task, char *comm), | ||
36 | |||
37 | TP_ARGS(task, comm), | ||
38 | |||
39 | TP_STRUCT__entry( | ||
40 | __field( pid_t, pid) | ||
41 | __array( char, oldcomm, TASK_COMM_LEN) | ||
42 | __array( char, newcomm, TASK_COMM_LEN) | ||
43 | __field( int, oom_score_adj) | ||
44 | ), | ||
45 | |||
46 | TP_fast_assign( | ||
47 | __entry->pid = task->pid; | ||
48 | memcpy(entry->oldcomm, task->comm, TASK_COMM_LEN); | ||
49 | memcpy(entry->newcomm, comm, TASK_COMM_LEN); | ||
50 | __entry->oom_score_adj = task->signal->oom_score_adj; | ||
51 | ), | ||
52 | |||
53 | TP_printk("pid=%d oldcomm=%s newcomm=%s oom_score_adj=%d", | ||
54 | __entry->pid, __entry->oldcomm, | ||
55 | __entry->newcomm, __entry->oom_score_adj) | ||
56 | ); | ||
57 | |||
58 | #endif | ||
59 | |||
60 | /* This part must be outside protection */ | ||
61 | #include <trace/define_trace.h> | ||
diff --git a/include/trace/events/vmscan.h b/include/trace/events/vmscan.h index edc4b3d25a2d..f64560e204bc 100644 --- a/include/trace/events/vmscan.h +++ b/include/trace/events/vmscan.h | |||
@@ -266,9 +266,10 @@ DECLARE_EVENT_CLASS(mm_vmscan_lru_isolate_template, | |||
266 | unsigned long nr_lumpy_taken, | 266 | unsigned long nr_lumpy_taken, |
267 | unsigned long nr_lumpy_dirty, | 267 | unsigned long nr_lumpy_dirty, |
268 | unsigned long nr_lumpy_failed, | 268 | unsigned long nr_lumpy_failed, |
269 | isolate_mode_t isolate_mode), | 269 | isolate_mode_t isolate_mode, |
270 | int file), | ||
270 | 271 | ||
271 | TP_ARGS(order, nr_requested, nr_scanned, nr_taken, nr_lumpy_taken, nr_lumpy_dirty, nr_lumpy_failed, isolate_mode), | 272 | TP_ARGS(order, nr_requested, nr_scanned, nr_taken, nr_lumpy_taken, nr_lumpy_dirty, nr_lumpy_failed, isolate_mode, file), |
272 | 273 | ||
273 | TP_STRUCT__entry( | 274 | TP_STRUCT__entry( |
274 | __field(int, order) | 275 | __field(int, order) |
@@ -279,6 +280,7 @@ DECLARE_EVENT_CLASS(mm_vmscan_lru_isolate_template, | |||
279 | __field(unsigned long, nr_lumpy_dirty) | 280 | __field(unsigned long, nr_lumpy_dirty) |
280 | __field(unsigned long, nr_lumpy_failed) | 281 | __field(unsigned long, nr_lumpy_failed) |
281 | __field(isolate_mode_t, isolate_mode) | 282 | __field(isolate_mode_t, isolate_mode) |
283 | __field(int, file) | ||
282 | ), | 284 | ), |
283 | 285 | ||
284 | TP_fast_assign( | 286 | TP_fast_assign( |
@@ -290,9 +292,10 @@ DECLARE_EVENT_CLASS(mm_vmscan_lru_isolate_template, | |||
290 | __entry->nr_lumpy_dirty = nr_lumpy_dirty; | 292 | __entry->nr_lumpy_dirty = nr_lumpy_dirty; |
291 | __entry->nr_lumpy_failed = nr_lumpy_failed; | 293 | __entry->nr_lumpy_failed = nr_lumpy_failed; |
292 | __entry->isolate_mode = isolate_mode; | 294 | __entry->isolate_mode = isolate_mode; |
295 | __entry->file = file; | ||
293 | ), | 296 | ), |
294 | 297 | ||
295 | TP_printk("isolate_mode=%d order=%d nr_requested=%lu nr_scanned=%lu nr_taken=%lu contig_taken=%lu contig_dirty=%lu contig_failed=%lu", | 298 | TP_printk("isolate_mode=%d order=%d nr_requested=%lu nr_scanned=%lu nr_taken=%lu contig_taken=%lu contig_dirty=%lu contig_failed=%lu file=%d", |
296 | __entry->isolate_mode, | 299 | __entry->isolate_mode, |
297 | __entry->order, | 300 | __entry->order, |
298 | __entry->nr_requested, | 301 | __entry->nr_requested, |
@@ -300,7 +303,8 @@ DECLARE_EVENT_CLASS(mm_vmscan_lru_isolate_template, | |||
300 | __entry->nr_taken, | 303 | __entry->nr_taken, |
301 | __entry->nr_lumpy_taken, | 304 | __entry->nr_lumpy_taken, |
302 | __entry->nr_lumpy_dirty, | 305 | __entry->nr_lumpy_dirty, |
303 | __entry->nr_lumpy_failed) | 306 | __entry->nr_lumpy_failed, |
307 | __entry->file) | ||
304 | ); | 308 | ); |
305 | 309 | ||
306 | DEFINE_EVENT(mm_vmscan_lru_isolate_template, mm_vmscan_lru_isolate, | 310 | DEFINE_EVENT(mm_vmscan_lru_isolate_template, mm_vmscan_lru_isolate, |
@@ -312,9 +316,10 @@ DEFINE_EVENT(mm_vmscan_lru_isolate_template, mm_vmscan_lru_isolate, | |||
312 | unsigned long nr_lumpy_taken, | 316 | unsigned long nr_lumpy_taken, |
313 | unsigned long nr_lumpy_dirty, | 317 | unsigned long nr_lumpy_dirty, |
314 | unsigned long nr_lumpy_failed, | 318 | unsigned long nr_lumpy_failed, |
315 | isolate_mode_t isolate_mode), | 319 | isolate_mode_t isolate_mode, |
320 | int file), | ||
316 | 321 | ||
317 | TP_ARGS(order, nr_requested, nr_scanned, nr_taken, nr_lumpy_taken, nr_lumpy_dirty, nr_lumpy_failed, isolate_mode) | 322 | TP_ARGS(order, nr_requested, nr_scanned, nr_taken, nr_lumpy_taken, nr_lumpy_dirty, nr_lumpy_failed, isolate_mode, file) |
318 | 323 | ||
319 | ); | 324 | ); |
320 | 325 | ||
@@ -327,9 +332,10 @@ DEFINE_EVENT(mm_vmscan_lru_isolate_template, mm_vmscan_memcg_isolate, | |||
327 | unsigned long nr_lumpy_taken, | 332 | unsigned long nr_lumpy_taken, |
328 | unsigned long nr_lumpy_dirty, | 333 | unsigned long nr_lumpy_dirty, |
329 | unsigned long nr_lumpy_failed, | 334 | unsigned long nr_lumpy_failed, |
330 | isolate_mode_t isolate_mode), | 335 | isolate_mode_t isolate_mode, |
336 | int file), | ||
331 | 337 | ||
332 | TP_ARGS(order, nr_requested, nr_scanned, nr_taken, nr_lumpy_taken, nr_lumpy_dirty, nr_lumpy_failed, isolate_mode) | 338 | TP_ARGS(order, nr_requested, nr_scanned, nr_taken, nr_lumpy_taken, nr_lumpy_dirty, nr_lumpy_failed, isolate_mode, file) |
333 | 339 | ||
334 | ); | 340 | ); |
335 | 341 | ||
diff --git a/include/trace/events/writeback.h b/include/trace/events/writeback.h index 99d1d0decf88..8588a8918023 100644 --- a/include/trace/events/writeback.h +++ b/include/trace/events/writeback.h | |||
@@ -300,12 +300,13 @@ TRACE_EVENT(balance_dirty_pages, | |||
300 | unsigned long dirty_ratelimit, | 300 | unsigned long dirty_ratelimit, |
301 | unsigned long task_ratelimit, | 301 | unsigned long task_ratelimit, |
302 | unsigned long dirtied, | 302 | unsigned long dirtied, |
303 | unsigned long period, | ||
303 | long pause, | 304 | long pause, |
304 | unsigned long start_time), | 305 | unsigned long start_time), |
305 | 306 | ||
306 | TP_ARGS(bdi, thresh, bg_thresh, dirty, bdi_thresh, bdi_dirty, | 307 | TP_ARGS(bdi, thresh, bg_thresh, dirty, bdi_thresh, bdi_dirty, |
307 | dirty_ratelimit, task_ratelimit, | 308 | dirty_ratelimit, task_ratelimit, |
308 | dirtied, pause, start_time), | 309 | dirtied, period, pause, start_time), |
309 | 310 | ||
310 | TP_STRUCT__entry( | 311 | TP_STRUCT__entry( |
311 | __array( char, bdi, 32) | 312 | __array( char, bdi, 32) |
@@ -320,6 +321,8 @@ TRACE_EVENT(balance_dirty_pages, | |||
320 | __field(unsigned int, dirtied_pause) | 321 | __field(unsigned int, dirtied_pause) |
321 | __field(unsigned long, paused) | 322 | __field(unsigned long, paused) |
322 | __field( long, pause) | 323 | __field( long, pause) |
324 | __field(unsigned long, period) | ||
325 | __field( long, think) | ||
323 | ), | 326 | ), |
324 | 327 | ||
325 | TP_fast_assign( | 328 | TP_fast_assign( |
@@ -336,6 +339,9 @@ TRACE_EVENT(balance_dirty_pages, | |||
336 | __entry->task_ratelimit = KBps(task_ratelimit); | 339 | __entry->task_ratelimit = KBps(task_ratelimit); |
337 | __entry->dirtied = dirtied; | 340 | __entry->dirtied = dirtied; |
338 | __entry->dirtied_pause = current->nr_dirtied_pause; | 341 | __entry->dirtied_pause = current->nr_dirtied_pause; |
342 | __entry->think = current->dirty_paused_when == 0 ? 0 : | ||
343 | (long)(jiffies - current->dirty_paused_when) * 1000/HZ; | ||
344 | __entry->period = period * 1000 / HZ; | ||
339 | __entry->pause = pause * 1000 / HZ; | 345 | __entry->pause = pause * 1000 / HZ; |
340 | __entry->paused = (jiffies - start_time) * 1000 / HZ; | 346 | __entry->paused = (jiffies - start_time) * 1000 / HZ; |
341 | ), | 347 | ), |
@@ -346,7 +352,7 @@ TRACE_EVENT(balance_dirty_pages, | |||
346 | "bdi_setpoint=%lu bdi_dirty=%lu " | 352 | "bdi_setpoint=%lu bdi_dirty=%lu " |
347 | "dirty_ratelimit=%lu task_ratelimit=%lu " | 353 | "dirty_ratelimit=%lu task_ratelimit=%lu " |
348 | "dirtied=%u dirtied_pause=%u " | 354 | "dirtied=%u dirtied_pause=%u " |
349 | "paused=%lu pause=%ld", | 355 | "paused=%lu pause=%ld period=%lu think=%ld", |
350 | __entry->bdi, | 356 | __entry->bdi, |
351 | __entry->limit, | 357 | __entry->limit, |
352 | __entry->setpoint, | 358 | __entry->setpoint, |
@@ -358,7 +364,9 @@ TRACE_EVENT(balance_dirty_pages, | |||
358 | __entry->dirtied, | 364 | __entry->dirtied, |
359 | __entry->dirtied_pause, | 365 | __entry->dirtied_pause, |
360 | __entry->paused, /* ms */ | 366 | __entry->paused, /* ms */ |
361 | __entry->pause /* ms */ | 367 | __entry->pause, /* ms */ |
368 | __entry->period, /* ms */ | ||
369 | __entry->think /* ms */ | ||
362 | ) | 370 | ) |
363 | ); | 371 | ); |
364 | 372 | ||