fluent-plugin-perf-tools 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.gitignore +15 -0
- data/.rubocop.yml +26 -0
- data/.ruby-version +1 -0
- data/CHANGELOG.md +5 -0
- data/CODE_OF_CONDUCT.md +84 -0
- data/Gemfile +5 -0
- data/LICENSE.txt +21 -0
- data/README.md +43 -0
- data/Rakefile +17 -0
- data/bin/console +15 -0
- data/bin/setup +8 -0
- data/fluent-plugin-perf-tools.gemspec +48 -0
- data/lib/fluent/plugin/in_perf_tools.rb +42 -0
- data/lib/fluent/plugin/perf_tools/cachestat.rb +65 -0
- data/lib/fluent/plugin/perf_tools/command.rb +30 -0
- data/lib/fluent/plugin/perf_tools/version.rb +9 -0
- data/lib/fluent/plugin/perf_tools.rb +11 -0
- data/perf-tools/LICENSE +339 -0
- data/perf-tools/README.md +205 -0
- data/perf-tools/bin/bitesize +1 -0
- data/perf-tools/bin/cachestat +1 -0
- data/perf-tools/bin/execsnoop +1 -0
- data/perf-tools/bin/funccount +1 -0
- data/perf-tools/bin/funcgraph +1 -0
- data/perf-tools/bin/funcslower +1 -0
- data/perf-tools/bin/functrace +1 -0
- data/perf-tools/bin/iolatency +1 -0
- data/perf-tools/bin/iosnoop +1 -0
- data/perf-tools/bin/killsnoop +1 -0
- data/perf-tools/bin/kprobe +1 -0
- data/perf-tools/bin/opensnoop +1 -0
- data/perf-tools/bin/perf-stat-hist +1 -0
- data/perf-tools/bin/reset-ftrace +1 -0
- data/perf-tools/bin/syscount +1 -0
- data/perf-tools/bin/tcpretrans +1 -0
- data/perf-tools/bin/tpoint +1 -0
- data/perf-tools/bin/uprobe +1 -0
- data/perf-tools/deprecated/README.md +1 -0
- data/perf-tools/deprecated/execsnoop-proc +150 -0
- data/perf-tools/deprecated/execsnoop-proc.8 +80 -0
- data/perf-tools/deprecated/execsnoop-proc_example.txt +46 -0
- data/perf-tools/disk/bitesize +175 -0
- data/perf-tools/examples/bitesize_example.txt +63 -0
- data/perf-tools/examples/cachestat_example.txt +58 -0
- data/perf-tools/examples/execsnoop_example.txt +153 -0
- data/perf-tools/examples/funccount_example.txt +126 -0
- data/perf-tools/examples/funcgraph_example.txt +2178 -0
- data/perf-tools/examples/funcslower_example.txt +110 -0
- data/perf-tools/examples/functrace_example.txt +341 -0
- data/perf-tools/examples/iolatency_example.txt +350 -0
- data/perf-tools/examples/iosnoop_example.txt +302 -0
- data/perf-tools/examples/killsnoop_example.txt +62 -0
- data/perf-tools/examples/kprobe_example.txt +379 -0
- data/perf-tools/examples/opensnoop_example.txt +47 -0
- data/perf-tools/examples/perf-stat-hist_example.txt +149 -0
- data/perf-tools/examples/reset-ftrace_example.txt +88 -0
- data/perf-tools/examples/syscount_example.txt +297 -0
- data/perf-tools/examples/tcpretrans_example.txt +93 -0
- data/perf-tools/examples/tpoint_example.txt +210 -0
- data/perf-tools/examples/uprobe_example.txt +321 -0
- data/perf-tools/execsnoop +292 -0
- data/perf-tools/fs/cachestat +167 -0
- data/perf-tools/images/perf-tools_2016.png +0 -0
- data/perf-tools/iolatency +296 -0
- data/perf-tools/iosnoop +296 -0
- data/perf-tools/kernel/funccount +146 -0
- data/perf-tools/kernel/funcgraph +259 -0
- data/perf-tools/kernel/funcslower +248 -0
- data/perf-tools/kernel/functrace +192 -0
- data/perf-tools/kernel/kprobe +270 -0
- data/perf-tools/killsnoop +263 -0
- data/perf-tools/man/man8/bitesize.8 +70 -0
- data/perf-tools/man/man8/cachestat.8 +111 -0
- data/perf-tools/man/man8/execsnoop.8 +104 -0
- data/perf-tools/man/man8/funccount.8 +76 -0
- data/perf-tools/man/man8/funcgraph.8 +166 -0
- data/perf-tools/man/man8/funcslower.8 +129 -0
- data/perf-tools/man/man8/functrace.8 +123 -0
- data/perf-tools/man/man8/iolatency.8 +116 -0
- data/perf-tools/man/man8/iosnoop.8 +169 -0
- data/perf-tools/man/man8/killsnoop.8 +100 -0
- data/perf-tools/man/man8/kprobe.8 +162 -0
- data/perf-tools/man/man8/opensnoop.8 +113 -0
- data/perf-tools/man/man8/perf-stat-hist.8 +111 -0
- data/perf-tools/man/man8/reset-ftrace.8 +49 -0
- data/perf-tools/man/man8/syscount.8 +96 -0
- data/perf-tools/man/man8/tcpretrans.8 +93 -0
- data/perf-tools/man/man8/tpoint.8 +140 -0
- data/perf-tools/man/man8/uprobe.8 +168 -0
- data/perf-tools/misc/perf-stat-hist +223 -0
- data/perf-tools/net/tcpretrans +311 -0
- data/perf-tools/opensnoop +280 -0
- data/perf-tools/syscount +192 -0
- data/perf-tools/system/tpoint +232 -0
- data/perf-tools/tools/reset-ftrace +123 -0
- data/perf-tools/user/uprobe +390 -0
- metadata +349 -0
@@ -0,0 +1,2178 @@
|
|
1
|
+
Demonstrations of funcgraph, the Linux ftrace version.
|
2
|
+
|
3
|
+
|
4
|
+
I'll start by showing do_nanosleep(), since it's usually a low frequency
|
5
|
+
function that can be easily triggered (run "vmstat 1"):
|
6
|
+
|
7
|
+
# ./funcgraph do_nanosleep
|
8
|
+
Tracing "do_nanosleep"... Ctrl-C to end.
|
9
|
+
0) | do_nanosleep() {
|
10
|
+
0) | hrtimer_start_range_ns() {
|
11
|
+
0) | __hrtimer_start_range_ns() {
|
12
|
+
0) | lock_hrtimer_base.isra.24() {
|
13
|
+
0) 0.198 us | _raw_spin_lock_irqsave();
|
14
|
+
0) 0.908 us | }
|
15
|
+
0) 0.061 us | idle_cpu();
|
16
|
+
0) 0.117 us | ktime_get();
|
17
|
+
0) 0.371 us | enqueue_hrtimer();
|
18
|
+
0) 0.075 us | _raw_spin_unlock_irqrestore();
|
19
|
+
0) 3.447 us | }
|
20
|
+
0) 3.998 us | }
|
21
|
+
0) | schedule() {
|
22
|
+
0) | __schedule() {
|
23
|
+
0) 0.050 us | rcu_note_context_switch();
|
24
|
+
0) 0.055 us | _raw_spin_lock_irq();
|
25
|
+
0) | deactivate_task() {
|
26
|
+
0) | dequeue_task() {
|
27
|
+
0) 0.142 us | update_rq_clock();
|
28
|
+
0) | dequeue_task_fair() {
|
29
|
+
0) | dequeue_entity() {
|
30
|
+
0) | update_curr() {
|
31
|
+
0) 0.086 us | cpuacct_charge();
|
32
|
+
0) 0.757 us | }
|
33
|
+
0) 0.052 us | clear_buddies();
|
34
|
+
0) 0.103 us | update_cfs_load();
|
35
|
+
0) | update_cfs_shares() {
|
36
|
+
0) | reweight_entity() {
|
37
|
+
0) 0.077 us | update_curr();
|
38
|
+
0) 0.438 us | }
|
39
|
+
0) 0.794 us | }
|
40
|
+
0) 3.067 us | }
|
41
|
+
0) 0.064 us | set_next_buddy();
|
42
|
+
0) 0.066 us | update_cfs_load();
|
43
|
+
0) 0.085 us | update_cfs_shares();
|
44
|
+
0) | hrtick_update() {
|
45
|
+
0) 0.063 us | hrtick_start_fair();
|
46
|
+
0) 0.367 us | }
|
47
|
+
0) 5.188 us | }
|
48
|
+
0) 5.923 us | }
|
49
|
+
0) 6.228 us | }
|
50
|
+
0) | put_prev_task_fair() {
|
51
|
+
0) 0.078 us | put_prev_entity();
|
52
|
+
0) | put_prev_entity() {
|
53
|
+
0) 0.070 us | update_curr();
|
54
|
+
0) 0.074 us | __enqueue_entity();
|
55
|
+
0) 0.737 us | }
|
56
|
+
0) 1.367 us | }
|
57
|
+
0) | pick_next_task_fair() {
|
58
|
+
0) | pick_next_entity() {
|
59
|
+
0) 0.052 us | wakeup_preempt_entity.isra.95();
|
60
|
+
0) 0.070 us | clear_buddies();
|
61
|
+
0) 0.676 us | }
|
62
|
+
0) | set_next_entity() {
|
63
|
+
0) 0.052 us | update_stats_wait_end();
|
64
|
+
0) 0.435 us | }
|
65
|
+
0) | pick_next_entity() {
|
66
|
+
0) 0.065 us | clear_buddies();
|
67
|
+
0) 0.376 us | }
|
68
|
+
0) | set_next_entity() {
|
69
|
+
0) 0.067 us | update_stats_wait_end();
|
70
|
+
0) 0.374 us | }
|
71
|
+
0) 0.051 us | hrtick_start_fair();
|
72
|
+
0) 3.879 us | }
|
73
|
+
0) 0.057 us | paravirt_start_context_switch();
|
74
|
+
0) | xen_load_sp0() {
|
75
|
+
0) 0.050 us | paravirt_get_lazy_mode();
|
76
|
+
0) 0.057 us | __xen_mc_entry();
|
77
|
+
0) 0.056 us | paravirt_get_lazy_mode();
|
78
|
+
0) 1.441 us | }
|
79
|
+
0) | xen_load_tls() {
|
80
|
+
0) 0.049 us | paravirt_get_lazy_mode();
|
81
|
+
0) 0.051 us | paravirt_get_lazy_mode();
|
82
|
+
0) | load_TLS_descriptor() {
|
83
|
+
0) | arbitrary_virt_to_machine() {
|
84
|
+
0) 0.081 us | __virt_addr_valid();
|
85
|
+
0) 0.052 us | __phys_addr();
|
86
|
+
0) 0.084 us | get_phys_to_machine();
|
87
|
+
0) 1.115 us | }
|
88
|
+
0) 0.053 us | __xen_mc_entry();
|
89
|
+
0) 1.744 us | }
|
90
|
+
0) | load_TLS_descriptor() {
|
91
|
+
0) | arbitrary_virt_to_machine() {
|
92
|
+
0) 0.053 us | __virt_addr_valid();
|
93
|
+
0) 0.056 us | __phys_addr();
|
94
|
+
0) 0.057 us | get_phys_to_machine();
|
95
|
+
0) 0.990 us | }
|
96
|
+
0) 0.053 us | __xen_mc_entry();
|
97
|
+
0) 1.583 us | } /* load_TLS_descriptor */
|
98
|
+
0) | load_TLS_descriptor() {
|
99
|
+
0) | arbitrary_virt_to_machine() {
|
100
|
+
0) 0.057 us | __virt_addr_valid();
|
101
|
+
0) 0.051 us | __phys_addr();
|
102
|
+
0) 0.053 us | get_phys_to_machine();
|
103
|
+
0) 0.978 us | }
|
104
|
+
0) 0.052 us | __xen_mc_entry();
|
105
|
+
0) 1.586 us | }
|
106
|
+
0) 0.052 us | paravirt_get_lazy_mode();
|
107
|
+
0) 6.630 us | }
|
108
|
+
0) | xen_end_context_switch() {
|
109
|
+
0) 0.666 us | xen_mc_flush();
|
110
|
+
0) 0.050 us | paravirt_end_context_switch();
|
111
|
+
0) 1.286 us | }
|
112
|
+
0) 0.172 us | xen_write_msr_safe();
|
113
|
+
------------------------------------------
|
114
|
+
0) platfor-3210 => vmstat-2854
|
115
|
+
------------------------------------------
|
116
|
+
|
117
|
+
0) | do_nanosleep() {
|
118
|
+
0) | hrtimer_start_range_ns() {
|
119
|
+
0) | __hrtimer_start_range_ns() {
|
120
|
+
0) | lock_hrtimer_base.isra.24() {
|
121
|
+
0) 0.217 us | _raw_spin_lock_irqsave();
|
122
|
+
0) 0.831 us | }
|
123
|
+
0) 0.066 us | idle_cpu();
|
124
|
+
0) 0.123 us | ktime_get();
|
125
|
+
0) 1.172 us | enqueue_hrtimer();
|
126
|
+
0) 0.089 us | _raw_spin_unlock_irqrestore();
|
127
|
+
0) 4.050 us | }
|
128
|
+
0) 4.523 us | }
|
129
|
+
[...]
|
130
|
+
|
131
|
+
The default output shows the function call graph, including all child kernel
|
132
|
+
functions, along with the function duration times. These times are printed on
|
133
|
+
either the return line for the function ("}"), or for leaf functions, on the
|
134
|
+
same line.
|
135
|
+
|
136
|
+
The format of this output is documented in the function graph section of the
|
137
|
+
kernel source file Documentation/trace/ftrace.txt.
|
138
|
+
|
139
|
+
This particular example shows the workings of do_nanosleep, in the first dozen
|
140
|
+
lines, and then schedule() is called to sleep this thread and run another. The
|
141
|
+
inner workings of schedule() is included in the output.
|
142
|
+
|
143
|
+
This output is great for determining the behavior of a certain kernel function,
|
144
|
+
and to identify functions that can be studied in more details using other, lower
|
145
|
+
overhead, tools (eg, funccount(8), functrace(8), kprobe(8)). The overheads
|
146
|
+
of funcgraph are moderate, since all kernel functions are traced in case
|
147
|
+
they are executed, then included in the output if they are.
|
148
|
+
|
149
|
+
Now, if you want to start understanding the general behavior of the kernel,
|
150
|
+
without a certain kernel function in mind, you may be better to begin with
|
151
|
+
CPU stack profiling using perf and generating a flame graph. Such an approach
|
152
|
+
has low overhead, as you are in control of the frequency of event collection
|
153
|
+
(eg, gathering CPU stacks at 99 Hertz). For instructions, see:
|
154
|
+
http://www.brendangregg.com/perf.html#FlameGraphs
|
155
|
+
|
156
|
+
|
157
|
+
|
158
|
+
On newer Linux kernels, you can use the -m option to limit the function
|
159
|
+
depth. Eg, 3 levels only:
|
160
|
+
|
161
|
+
# ./funcgraph -m 3 do_nanosleep
|
162
|
+
Tracing "do_nanosleep"... Ctrl-C to end.
|
163
|
+
1) | do_nanosleep() {
|
164
|
+
1) | hrtimer_start_range_ns() {
|
165
|
+
1) 1.115 us | __hrtimer_start_range_ns();
|
166
|
+
1) 1.919 us | }
|
167
|
+
1) | schedule() {
|
168
|
+
1) | __schedule() {
|
169
|
+
1) 1000131 us | }
|
170
|
+
1) 11.006 us | xen_evtchn_do_upcall();
|
171
|
+
1) 1000149 us | }
|
172
|
+
1) | hrtimer_cancel() {
|
173
|
+
1) 0.212 us | hrtimer_try_to_cancel();
|
174
|
+
1) 0.699 us | }
|
175
|
+
1) 1000154 us | }
|
176
|
+
|
177
|
+
Neat.
|
178
|
+
|
179
|
+
|
180
|
+
Now do_sys_open() to 3 levels:
|
181
|
+
|
182
|
+
0) | do_sys_open() {
|
183
|
+
0) | getname() {
|
184
|
+
0) 0.296 us | getname_flags();
|
185
|
+
0) 0.768 us | }
|
186
|
+
0) | get_unused_fd_flags() {
|
187
|
+
0) 0.397 us | __alloc_fd();
|
188
|
+
0) 0.827 us | }
|
189
|
+
0) | do_filp_open() {
|
190
|
+
0) 4.166 us | path_openat();
|
191
|
+
0) 4.617 us | }
|
192
|
+
0) | __fsnotify_parent() {
|
193
|
+
0) 0.083 us | dget_parent();
|
194
|
+
0) 0.063 us | dput();
|
195
|
+
0) 0.883 us | }
|
196
|
+
0) 0.058 us | fsnotify();
|
197
|
+
0) | fd_install() {
|
198
|
+
0) 0.133 us | __fd_install();
|
199
|
+
0) 0.525 us | }
|
200
|
+
0) | putname() {
|
201
|
+
0) 0.198 us | final_putname();
|
202
|
+
0) 0.512 us | }
|
203
|
+
0) 10.777 us | }
|
204
|
+
[...]
|
205
|
+
|
206
|
+
I can then pick the highest latency child function, then run funcgraph again
|
207
|
+
using it as the target.
|
208
|
+
|
209
|
+
|
210
|
+
Without timestamps (-D to elide duration):
|
211
|
+
|
212
|
+
# ./funcgraph -Dm 3 do_sys_open
|
213
|
+
Tracing "do_sys_open"... Ctrl-C to end.
|
214
|
+
1) do_sys_open() {
|
215
|
+
1) getname() {
|
216
|
+
1) getname_flags();
|
217
|
+
1) }
|
218
|
+
1) get_unused_fd_flags() {
|
219
|
+
1) __alloc_fd();
|
220
|
+
1) }
|
221
|
+
1) do_filp_open() {
|
222
|
+
1) path_openat();
|
223
|
+
1) }
|
224
|
+
1) __fsnotify_parent();
|
225
|
+
1) fsnotify();
|
226
|
+
1) fd_install() {
|
227
|
+
1) __fd_install();
|
228
|
+
1) }
|
229
|
+
1) putname() {
|
230
|
+
1) final_putname();
|
231
|
+
1) }
|
232
|
+
1) }
|
233
|
+
|
234
|
+
Beautiful.
|
235
|
+
|
236
|
+
I could elide the CPU column as well, but I want to leave it: if it changes
|
237
|
+
half-way through some output, you know the CPU buffer has switched, and the
|
238
|
+
output may be shuffled.
|
239
|
+
|
240
|
+
|
241
|
+
For this example, I trace vfs_read() calls by process ID 5363: which is a bash
|
242
|
+
shell. I also include headers (-H) and absolute timestamps (-t). While
|
243
|
+
tracing, in that bash shell, I typed the word "hello":
|
244
|
+
|
245
|
+
# ./funcgraph -Htp 5363 vfs_read
|
246
|
+
Tracing "vfs_read" for PID 5363... Ctrl-C to end.
|
247
|
+
# tracer: function_graph
|
248
|
+
#
|
249
|
+
# TIME CPU DURATION FUNCTION CALLS
|
250
|
+
# | | | | | | | |
|
251
|
+
7238523.638008 | 0) | finish_task_switch() {
|
252
|
+
7238523.638012 | 0) | xen_evtchn_do_upcall() {
|
253
|
+
7238523.638012 | 0) | irq_enter() {
|
254
|
+
7238523.638013 | 0) 0.153 us | rcu_irq_enter();
|
255
|
+
7238523.638014 | 0) 1.144 us | }
|
256
|
+
7238523.638014 | 0) 0.056 us | exit_idle();
|
257
|
+
7238523.638014 | 0) | __xen_evtchn_do_upcall() {
|
258
|
+
7238523.638015 | 0) | evtchn_2l_handle_events() {
|
259
|
+
7238523.638015 | 0) 0.057 us | irq_from_virq();
|
260
|
+
7238523.638015 | 0) | evtchn_from_irq() {
|
261
|
+
7238523.638015 | 0) | irq_get_irq_data() {
|
262
|
+
7238523.638016 | 0) 0.058 us | irq_to_desc();
|
263
|
+
7238523.638016 | 0) 0.565 us | }
|
264
|
+
7238523.638016 | 0) 0.966 us | }
|
265
|
+
7238523.638016 | 0) | get_evtchn_to_irq() {
|
266
|
+
7238523.638017 | 0) 0.050 us | evtchn_2l_max_channels();
|
267
|
+
7238523.638017 | 0) 0.386 us | }
|
268
|
+
7238523.638017 | 0) | generic_handle_irq() {
|
269
|
+
7238523.638017 | 0) 0.058 us | irq_to_desc();
|
270
|
+
7238523.638018 | 0) | handle_percpu_irq() {
|
271
|
+
7238523.638018 | 0) | ack_dynirq() {
|
272
|
+
7238523.638018 | 0) | evtchn_from_irq() {
|
273
|
+
7238523.638018 | 0) | irq_get_irq_data() {
|
274
|
+
7238523.638019 | 0) 0.049 us | irq_to_desc();
|
275
|
+
7238523.638019 | 0) 0.441 us | }
|
276
|
+
7238523.638019 | 0) 0.772 us | }
|
277
|
+
7238523.638019 | 0) 0.049 us | irq_move_irq();
|
278
|
+
7238523.638020 | 0) 0.060 us | evtchn_2l_clear_pending();
|
279
|
+
7238523.638020 | 0) 1.810 us | }
|
280
|
+
7238523.638020 | 0) | handle_irq_event_percpu() {
|
281
|
+
7238523.638020 | 0) | xen_irq_work_interrupt() {
|
282
|
+
7238523.638021 | 0) | irq_enter() {
|
283
|
+
7238523.638021 | 0) 0.056 us | rcu_irq_enter();
|
284
|
+
7238523.638021 | 0) 0.384 us | }
|
285
|
+
7238523.638021 | 0) | __wake_up() {
|
286
|
+
7238523.638022 | 0) 0.059 us | _raw_spin_lock_irqsave();
|
287
|
+
7238523.638022 | 0) | __wake_up_common() {
|
288
|
+
7238523.638022 | 0) | autoremove_wake_function() {
|
289
|
+
7238523.638023 | 0) | default_wake_function() {
|
290
|
+
7238523.638023 | 0) | try_to_wake_up() {
|
291
|
+
7238523.638023 | 0) 0.220 us | _raw_spin_lock_irqsave();
|
292
|
+
7238523.638024 | 0) 0.270 us | task_waking_fair();
|
293
|
+
7238523.638024 | 0) | select_task_rq_fair() {
|
294
|
+
7238523.638025 | 0) 0.055 us | source_load();
|
295
|
+
7238523.638025 | 0) 0.056 us | target_load();
|
296
|
+
7238523.638025 | 0) 0.060 us | idle_cpu();
|
297
|
+
7238523.638026 | 0) 0.054 us | cpus_share_cache();
|
298
|
+
7238523.638026 | 0) 0.083 us | idle_cpu();
|
299
|
+
7238523.638026 | 0) 2.060 us | }
|
300
|
+
7238523.638027 | 0) 0.051 us | _raw_spin_lock();
|
301
|
+
7238523.638027 | 0) | ttwu_do_activate.constprop.124() {
|
302
|
+
7238523.638027 | 0) | activate_task() {
|
303
|
+
7238523.638027 | 0) | enqueue_task() {
|
304
|
+
7238523.638028 | 0) 0.120 us | update_rq_clock();
|
305
|
+
7238523.638028 | 0) | enqueue_task_fair() {
|
306
|
+
7238523.638028 | 0) | enqueue_entity() {
|
307
|
+
7238523.638028 | 0) 0.147 us | update_curr();
|
308
|
+
7238523.638029 | 0) 0.055 us | __compute_runnable_contrib.part.51();
|
309
|
+
7238523.638029 | 0) 0.066 us | __update_entity_load_avg_contrib();
|
310
|
+
7238523.638029 | 0) 0.141 us | update_cfs_rq_blocked_load();
|
311
|
+
7238523.638030 | 0) 0.068 us | account_entity_enqueue();
|
312
|
+
7238523.638030 | 0) 0.351 us | update_cfs_shares();
|
313
|
+
7238523.638031 | 0) 0.053 us | place_entity();
|
314
|
+
7238523.638031 | 0) 0.082 us | __enqueue_entity();
|
315
|
+
7238523.638032 | 0) 0.050 us | update_cfs_rq_blocked_load();
|
316
|
+
7238523.638032 | 0) 3.922 us | }
|
317
|
+
7238523.638032 | 0) | enqueue_entity() {
|
318
|
+
7238523.638033 | 0) 0.058 us | update_curr();
|
319
|
+
7238523.638033 | 0) 0.056 us | __compute_runnable_contrib.part.51();
|
320
|
+
7238523.638033 | 0) 0.078 us | __update_entity_load_avg_contrib();
|
321
|
+
7238523.638034 | 0) 0.055 us | update_cfs_rq_blocked_load();
|
322
|
+
7238523.638034 | 0) 0.064 us | account_entity_enqueue();
|
323
|
+
7238523.638034 | 0) 0.059 us | update_cfs_shares();
|
324
|
+
7238523.638035 | 0) 0.050 us | place_entity();
|
325
|
+
7238523.638036 | 0) 0.057 us | __enqueue_entity();
|
326
|
+
7238523.638036 | 0) 3.829 us | }
|
327
|
+
7238523.638037 | 0) 0.057 us | hrtick_update();
|
328
|
+
7238523.638037 | 0) 8.876 us | }
|
329
|
+
7238523.638037 | 0) 9.698 us | }
|
330
|
+
7238523.638037 | 0) 10.113 us | }
|
331
|
+
7238523.638038 | 0) | ttwu_do_wakeup() {
|
332
|
+
7238523.638038 | 0) | check_preempt_curr() {
|
333
|
+
7238523.638038 | 0) | resched_task() {
|
334
|
+
7238523.638038 | 0) | xen_smp_send_reschedule() {
|
335
|
+
7238523.638038 | 0) | xen_send_IPI_one() {
|
336
|
+
7238523.638039 | 0) | notify_remote_via_irq() {
|
337
|
+
7238523.638039 | 0) | evtchn_from_irq() {
|
338
|
+
7238523.638039 | 0) | irq_get_irq_data() {
|
339
|
+
7238523.638039 | 0) 0.051 us | irq_to_desc();
|
340
|
+
7238523.638039 | 0) 0.518 us | }
|
341
|
+
7238523.638040 | 0) 0.955 us | }
|
342
|
+
7238523.638041 | 0) 2.001 us | }
|
343
|
+
7238523.638041 | 0) 2.391 us | }
|
344
|
+
7238523.638041 | 0) 2.745 us | }
|
345
|
+
7238523.638041 | 0) 3.183 us | }
|
346
|
+
7238523.638042 | 0) 3.663 us | }
|
347
|
+
7238523.638042 | 0) 4.621 us | }
|
348
|
+
7238523.638043 | 0) 15.443 us | }
|
349
|
+
7238523.638043 | 0) 0.067 us | _raw_spin_unlock();
|
350
|
+
7238523.638043 | 0) 0.167 us | ttwu_stat();
|
351
|
+
7238523.638044 | 0) 0.087 us | _raw_spin_unlock_irqrestore();
|
352
|
+
7238523.638044 | 0) 21.447 us | }
|
353
|
+
7238523.638045 | 0) 21.940 us | }
|
354
|
+
7238523.638045 | 0) 22.406 us | }
|
355
|
+
7238523.638045 | 0) 23.071 us | }
|
356
|
+
7238523.638045 | 0) 0.073 us | _raw_spin_unlock_irqrestore();
|
357
|
+
7238523.638046 | 0) 24.382 us | }
|
358
|
+
7238523.638046 | 0) | irq_exit() {
|
359
|
+
7238523.638047 | 0) 0.085 us | idle_cpu();
|
360
|
+
7238523.638047 | 0) 0.093 us | rcu_irq_exit();
|
361
|
+
7238523.638048 | 0) 1.242 us | }
|
362
|
+
7238523.638048 | 0) 27.410 us | }
|
363
|
+
7238523.638049 | 0) 0.139 us | add_interrupt_randomness();
|
364
|
+
7238523.638049 | 0) 0.089 us | note_interrupt();
|
365
|
+
7238523.638050 | 0) 29.582 us | }
|
366
|
+
7238523.638050 | 0) 32.112 us | }
|
367
|
+
7238523.638050 | 0) 32.951 us | }
|
368
|
+
7238523.638051 | 0) 35.765 us | }
|
369
|
+
7238523.638051 | 0) 36.170 us | }
|
370
|
+
7238523.638051 | 0) | irq_exit() {
|
371
|
+
7238523.638051 | 0) 0.082 us | idle_cpu();
|
372
|
+
7238523.638052 | 0) 0.071 us | rcu_irq_exit();
|
373
|
+
7238523.638053 | 0) 1.328 us | }
|
374
|
+
7238523.638053 | 0) 40.563 us | }
|
375
|
+
7238523.638054 | 0) | __mmdrop() {
|
376
|
+
7238523.638054 | 0) | pgd_free() {
|
377
|
+
7238523.638055 | 0) 0.151 us | _raw_spin_lock();
|
378
|
+
7238523.638055 | 0) 0.069 us | _raw_spin_unlock();
|
379
|
+
7238523.638056 | 0) | xen_pgd_free() {
|
380
|
+
7238523.638056 | 0) 0.067 us | xen_get_user_pgd();
|
381
|
+
7238523.638057 | 0) | free_pages() {
|
382
|
+
7238523.638057 | 0) | __free_pages() {
|
383
|
+
7238523.638057 | 0) | free_hot_cold_page() {
|
384
|
+
7238523.638058 | 0) 0.080 us | free_pages_prepare();
|
385
|
+
7238523.638058 | 0) 0.363 us | get_pfnblock_flags_mask();
|
386
|
+
7238523.638059 | 0) 1.626 us | }
|
387
|
+
7238523.638059 | 0) 2.317 us | }
|
388
|
+
7238523.638060 | 0) 2.847 us | }
|
389
|
+
7238523.638060 | 0) 3.908 us | }
|
390
|
+
7238523.638060 | 0) | free_pages() {
|
391
|
+
7238523.638060 | 0) | __free_pages() {
|
392
|
+
7238523.638061 | 0) | free_hot_cold_page() {
|
393
|
+
7238523.638061 | 0) 0.083 us | free_pages_prepare();
|
394
|
+
7238523.638061 | 0) 0.139 us | get_pfnblock_flags_mask();
|
395
|
+
7238523.638062 | 0) 1.062 us | }
|
396
|
+
7238523.638062 | 0) 1.534 us | }
|
397
|
+
7238523.638062 | 0) 2.038 us | }
|
398
|
+
7238523.638063 | 0) 8.268 us | }
|
399
|
+
7238523.638064 | 0) 0.160 us | destroy_context();
|
400
|
+
7238523.638065 | 0) 0.384 us | kmem_cache_free();
|
401
|
+
7238523.638066 | 0) 11.433 us | }
|
402
|
+
7238523.638066 | 0) 54.448 us | }
|
403
|
+
7238523.638066 | 0) 19354026 us | } /* __schedule */
|
404
|
+
7238523.638067 | 0) 19354026 us | } /* schedule */
|
405
|
+
7238523.638067 | 0) 19354027 us | } /* schedule_timeout */
|
406
|
+
7238523.638067 | 0) 0.121 us | down_read();
|
407
|
+
7238523.638068 | 0) | copy_from_read_buf() {
|
408
|
+
7238523.638069 | 0) | tty_audit_add_data() {
|
409
|
+
7238523.638070 | 0) 0.220 us | _raw_spin_lock_irqsave();
|
410
|
+
7238523.638071 | 0) 0.097 us | _raw_spin_unlock_irqrestore();
|
411
|
+
7238523.638071 | 0) 0.078 us | _raw_spin_lock_irqsave();
|
412
|
+
7238523.638072 | 0) 0.077 us | _raw_spin_unlock_irqrestore();
|
413
|
+
7238523.638072 | 0) 2.795 us | }
|
414
|
+
7238523.638073 | 0) 4.183 us | }
|
415
|
+
7238523.638073 | 0) 0.084 us | copy_from_read_buf();
|
416
|
+
7238523.638074 | 0) 0.078 us | n_tty_set_room();
|
417
|
+
7238523.638074 | 0) 0.082 us | n_tty_write_wakeup();
|
418
|
+
7238523.638075 | 0) | __wake_up() {
|
419
|
+
7238523.638075 | 0) 0.084 us | _raw_spin_lock_irqsave();
|
420
|
+
7238523.638076 | 0) | __wake_up_common() {
|
421
|
+
7238523.638076 | 0) 0.095 us | pollwake();
|
422
|
+
7238523.638077 | 0) 0.819 us | }
|
423
|
+
7238523.638077 | 0) 0.074 us | _raw_spin_unlock_irqrestore();
|
424
|
+
7238523.638078 | 0) 2.463 us | }
|
425
|
+
7238523.638078 | 0) 0.071 us | n_tty_set_room();
|
426
|
+
7238523.638078 | 0) 0.082 us | up_read();
|
427
|
+
7238523.638079 | 0) | remove_wait_queue() {
|
428
|
+
7238523.638079 | 0) 0.082 us | _raw_spin_lock_irqsave();
|
429
|
+
7238523.638080 | 0) 0.086 us | _raw_spin_unlock_irqrestore();
|
430
|
+
7238523.638080 | 0) 1.239 us | }
|
431
|
+
7238523.638081 | 0) 0.142 us | mutex_unlock();
|
432
|
+
7238523.638081 | 0) 19354047 us | } /* n_tty_read */
|
433
|
+
7238523.638082 | 0) | tty_ldisc_deref() {
|
434
|
+
7238523.638082 | 0) 0.064 us | ldsem_up_read();
|
435
|
+
7238523.638082 | 0) 0.554 us | }
|
436
|
+
7238523.638083 | 0) 0.074 us | get_seconds();
|
437
|
+
7238523.638083 | 0) 19354052 us | } /* tty_read */
|
438
|
+
7238523.638084 | 0) 0.352 us | __fsnotify_parent();
|
439
|
+
7238523.638085 | 0) 0.178 us | fsnotify();
|
440
|
+
7238523.638085 | 0) 19354058 us | } /* vfs_read */
|
441
|
+
7238523.638156 | 0) | vfs_read() {
|
442
|
+
7238523.638157 | 0) | rw_verify_area() {
|
443
|
+
7238523.638157 | 0) | security_file_permission() {
|
444
|
+
7238523.638158 | 0) | apparmor_file_permission() {
|
445
|
+
7238523.638158 | 0) 0.183 us | common_file_perm();
|
446
|
+
7238523.638159 | 0) 0.778 us | }
|
447
|
+
7238523.638159 | 0) 0.081 us | __fsnotify_parent();
|
448
|
+
7238523.638160 | 0) 0.104 us | fsnotify();
|
449
|
+
7238523.638160 | 0) 2.662 us | }
|
450
|
+
7238523.638161 | 0) 3.337 us | }
|
451
|
+
7238523.638161 | 0) | tty_read() {
|
452
|
+
7238523.638161 | 0) 0.067 us | tty_paranoia_check();
|
453
|
+
7238523.638162 | 0) | tty_ldisc_ref_wait() {
|
454
|
+
7238523.638162 | 0) 0.080 us | } /* ldsem_down_read */
|
455
|
+
7238523.638163 | 0) 0.637 us | }
|
456
|
+
7238523.638163 | 0) | n_tty_read() {
|
457
|
+
7238523.638164 | 0) 0.078 us | _raw_spin_lock_irq();
|
458
|
+
7238523.638164 | 0) 0.090 us | mutex_lock_interruptible();
|
459
|
+
7238523.638165 | 0) 0.078 us | down_read();
|
460
|
+
7238523.638165 | 0) | add_wait_queue() {
|
461
|
+
7238523.638166 | 0) 0.070 us | _raw_spin_lock_irqsave();
|
462
|
+
7238523.638166 | 0) 0.084 us | _raw_spin_unlock_irqrestore();
|
463
|
+
7238523.638167 | 0) 1.111 us | }
|
464
|
+
7238523.638167 | 0) 0.083 us | tty_hung_up_p();
|
465
|
+
7238523.638168 | 0) 0.080 us | n_tty_set_room();
|
466
|
+
7238523.638169 | 0) 0.068 us | up_read();
|
467
|
+
7238523.638169 | 0) | schedule_timeout() {
|
468
|
+
7238523.638170 | 0) | schedule() {
|
469
|
+
7238523.638170 | 0) | __schedule() {
|
470
|
+
7238523.638171 | 0) 0.078 us | rcu_note_context_switch();
|
471
|
+
7238523.638171 | 0) 0.081 us | _raw_spin_lock_irq();
|
472
|
+
7238523.638172 | 0) | deactivate_task() {
|
473
|
+
7238523.638172 | 0) | dequeue_task() {
|
474
|
+
7238523.638172 | 0) 0.181 us | update_rq_clock();
|
475
|
+
7238523.638173 | 0) | dequeue_task_fair() {
|
476
|
+
7238523.638174 | 0) | dequeue_entity() {
|
477
|
+
7238523.638174 | 0) | update_curr() {
|
478
|
+
7238523.638174 | 0) 0.257 us | cpuacct_charge();
|
479
|
+
7238523.638175 | 0) 0.982 us | }
|
480
|
+
7238523.638175 | 0) 0.079 us | update_cfs_rq_blocked_load();
|
481
|
+
7238523.638176 | 0) 0.080 us | clear_buddies();
|
482
|
+
7238523.638177 | 0) 0.096 us | account_entity_dequeue();
|
483
|
+
7238523.638177 | 0) | update_cfs_shares() {
|
484
|
+
7238523.638178 | 0) 0.113 us | update_curr();
|
485
|
+
7238523.638178 | 0) 0.087 us | account_entity_dequeue();
|
486
|
+
7238523.638179 | 0) 0.073 us | account_entity_enqueue();
|
487
|
+
7238523.638179 | 0) 1.948 us | }
|
488
|
+
7238523.638180 | 0) 5.913 us | }
|
489
|
+
7238523.638180 | 0) | dequeue_entity() {
|
490
|
+
7238523.638180 | 0) 0.086 us | update_curr();
|
491
|
+
7238523.638181 | 0) 0.079 us | update_cfs_rq_blocked_load();
|
492
|
+
7238523.638182 | 0) 0.076 us | clear_buddies();
|
493
|
+
7238523.638182 | 0) 0.076 us | account_entity_dequeue();
|
494
|
+
7238523.638183 | 0) 0.104 us | update_cfs_shares();
|
495
|
+
7238523.638183 | 0) 3.171 us | }
|
496
|
+
7238523.638184 | 0) 0.076 us | hrtick_update();
|
497
|
+
7238523.638184 | 0) 10.785 us | }
|
498
|
+
7238523.638184 | 0) 12.057 us | }
|
499
|
+
7238523.638185 | 0) 12.704 us | }
|
500
|
+
7238523.638185 | 0) | pick_next_task_fair() {
|
501
|
+
7238523.638185 | 0) 0.074 us | check_cfs_rq_runtime();
|
502
|
+
7238523.638186 | 0) | pick_next_entity() {
|
503
|
+
7238523.638186 | 0) 0.067 us | clear_buddies();
|
504
|
+
7238523.638187 | 0) 0.544 us | }
|
505
|
+
7238523.638187 | 0) | put_prev_entity() {
|
506
|
+
7238523.638187 | 0) 0.079 us | check_cfs_rq_runtime();
|
507
|
+
7238523.638188 | 0) 0.612 us | }
|
508
|
+
7238523.638188 | 0) | put_prev_entity() {
|
509
|
+
7238523.638188 | 0) 0.076 us | check_cfs_rq_runtime();
|
510
|
+
7238523.638189 | 0) 0.618 us | }
|
511
|
+
7238523.638189 | 0) | set_next_entity() {
|
512
|
+
7238523.638190 | 0) 0.078 us | update_stats_wait_end();
|
513
|
+
7238523.638190 | 0) 0.712 us | }
|
514
|
+
7238523.638190 | 0) 5.023 us | }
|
515
|
+
7238523.638191 | 0) 0.086 us | paravirt_start_context_switch();
|
516
|
+
7238523.638192 | 0) 0.070 us | xen_read_cr0();
|
517
|
+
7238523.638193 | 0) | xen_write_cr0() {
|
518
|
+
7238523.638193 | 0) 0.085 us | paravirt_get_lazy_mode();
|
519
|
+
7238523.638194 | 0) 0.085 us | __xen_mc_entry();
|
520
|
+
7238523.638194 | 0) 0.077 us | paravirt_get_lazy_mode();
|
521
|
+
7238523.638195 | 0) 1.822 us | }
|
522
|
+
7238523.638195 | 0) | xen_load_sp0() {
|
523
|
+
7238523.638195 | 0) 0.074 us | paravirt_get_lazy_mode();
|
524
|
+
7238523.638196 | 0) 0.085 us | __xen_mc_entry();
|
525
|
+
7238523.638196 | 0) 0.078 us | paravirt_get_lazy_mode();
|
526
|
+
7238523.638197 | 0) 1.754 us | }
|
527
|
+
7238523.638197 | 0) | xen_load_tls() {
|
528
|
+
7238523.638198 | 0) 0.069 us | paravirt_get_lazy_mode();
|
529
|
+
7238523.638198 | 0) 0.082 us | paravirt_get_lazy_mode();
|
530
|
+
7238523.638199 | 0) 0.127 us | load_TLS_descriptor();
|
531
|
+
7238523.638199 | 0) 0.080 us | load_TLS_descriptor();
|
532
|
+
7238523.638200 | 0) 0.094 us | load_TLS_descriptor();
|
533
|
+
7238523.638201 | 0) 0.081 us | paravirt_get_lazy_mode();
|
534
|
+
7238523.638202 | 0) 4.155 us | }
|
535
|
+
7238523.638202 | 0) | xen_end_context_switch() {
|
536
|
+
7238523.638202 | 0) 0.699 us | xen_mc_flush();
|
537
|
+
7238523.638204 | 0) 0.089 us | paravirt_end_context_switch();
|
538
|
+
7238523.638204 | 0) 1.915 us | }
|
539
|
+
7238523.797630 | 0) | finish_task_switch() {
|
540
|
+
7238523.797634 | 0) | xen_evtchn_do_upcall() {
|
541
|
+
7238523.797634 | 0) | irq_enter() {
|
542
|
+
7238523.797634 | 0) 0.134 us | rcu_irq_enter();
|
543
|
+
7238523.797635 | 0) 0.688 us | }
|
544
|
+
7238523.797635 | 0) 0.055 us | exit_idle();
|
545
|
+
7238523.797635 | 0) | __xen_evtchn_do_upcall() {
|
546
|
+
7238523.797636 | 0) | evtchn_2l_handle_events() {
|
547
|
+
7238523.797636 | 0) 0.048 us | irq_from_virq();
|
548
|
+
7238523.797636 | 0) | evtchn_from_irq() {
|
549
|
+
7238523.797636 | 0) | irq_get_irq_data() {
|
550
|
+
7238523.797637 | 0) 0.061 us | irq_to_desc();
|
551
|
+
7238523.797637 | 0) 0.564 us | }
|
552
|
+
7238523.797637 | 0) 0.954 us | }
|
553
|
+
7238523.797638 | 0) | get_evtchn_to_irq() {
|
554
|
+
7238523.797638 | 0) 0.057 us | evtchn_2l_max_channels();
|
555
|
+
7238523.797638 | 0) 0.409 us | }
|
556
|
+
7238523.797638 | 0) | generic_handle_irq() {
|
557
|
+
7238523.797638 | 0) 0.052 us | irq_to_desc();
|
558
|
+
7238523.797639 | 0) | handle_percpu_irq() {
|
559
|
+
7238523.797639 | 0) | ack_dynirq() {
|
560
|
+
7238523.797639 | 0) | evtchn_from_irq() {
|
561
|
+
7238523.797639 | 0) | irq_get_irq_data() {
|
562
|
+
7238523.797640 | 0) 0.057 us | irq_to_desc();
|
563
|
+
7238523.797640 | 0) 0.440 us | }
|
564
|
+
7238523.797640 | 0) 0.746 us | }
|
565
|
+
7238523.797640 | 0) 0.056 us | irq_move_irq();
|
566
|
+
7238523.797641 | 0) 0.058 us | evtchn_2l_clear_pending();
|
567
|
+
7238523.797641 | 0) 1.729 us | }
|
568
|
+
7238523.797641 | 0) | handle_irq_event_percpu() {
|
569
|
+
7238523.797641 | 0) | xen_irq_work_interrupt() {
|
570
|
+
7238523.797642 | 0) | irq_enter() {
|
571
|
+
7238523.797642 | 0) 0.053 us | rcu_irq_enter();
|
572
|
+
7238523.797642 | 0) 0.396 us | }
|
573
|
+
7238523.797642 | 0) | __wake_up() {
|
574
|
+
7238523.797643 | 0) 0.053 us | _raw_spin_lock_irqsave();
|
575
|
+
7238523.797643 | 0) | __wake_up_common() {
|
576
|
+
7238523.797643 | 0) | autoremove_wake_function() {
|
577
|
+
7238523.797644 | 0) | default_wake_function() {
|
578
|
+
7238523.797644 | 0) | try_to_wake_up() {
|
579
|
+
7238523.797644 | 0) 0.228 us | _raw_spin_lock_irqsave();
|
580
|
+
7238523.797645 | 0) 0.194 us | task_waking_fair();
|
581
|
+
7238523.797645 | 0) | select_task_rq_fair() {
|
582
|
+
7238523.797645 | 0) 0.051 us | source_load();
|
583
|
+
7238523.797646 | 0) 0.050 us | target_load();
|
584
|
+
7238523.797646 | 0) 0.067 us | idle_cpu();
|
585
|
+
7238523.797647 | 0) 0.050 us | cpus_share_cache();
|
586
|
+
7238523.797647 | 0) 0.068 us | idle_cpu();
|
587
|
+
7238523.797647 | 0) 1.983 us | }
|
588
|
+
7238523.797648 | 0) 0.051 us | _raw_spin_lock();
|
589
|
+
7238523.797648 | 0) | ttwu_do_activate.constprop.124() {
|
590
|
+
7238523.797648 | 0) | activate_task() {
|
591
|
+
7238523.797648 | 0) | enqueue_task() {
|
592
|
+
7238523.797648 | 0) 0.135 us | update_rq_clock();
|
593
|
+
7238523.797649 | 0) | enqueue_task_fair() {
|
594
|
+
7238523.797649 | 0) | enqueue_entity() {
|
595
|
+
7238523.797649 | 0) 0.059 us | update_curr();
|
596
|
+
7238523.797650 | 0) 0.073 us | __compute_runnable_contrib.part.51();
|
597
|
+
7238523.797650 | 0) 0.066 us | __update_entity_load_avg_contrib();
|
598
|
+
7238523.797650 | 0) 0.059 us | update_cfs_rq_blocked_load();
|
599
|
+
7238523.797651 | 0) 0.064 us | account_entity_enqueue();
|
600
|
+
7238523.797651 | 0) 0.137 us | update_cfs_shares();
|
601
|
+
7238523.797651 | 0) 0.054 us | place_entity();
|
602
|
+
7238523.797652 | 0) 0.074 us | __enqueue_entity();
|
603
|
+
7238523.797652 | 0) 3.085 us | }
|
604
|
+
7238523.797652 | 0) | enqueue_entity() {
|
605
|
+
7238523.797653 | 0) 0.058 us | update_curr();
|
606
|
+
7238523.797654 | 0) 0.049 us | update_cfs_rq_blocked_load();
|
607
|
+
7238523.797654 | 0) 0.057 us | account_entity_enqueue();
|
608
|
+
7238523.797655 | 0) 0.066 us | update_cfs_shares();
|
609
|
+
7238523.797655 | 0) 0.049 us | place_entity();
|
610
|
+
7238523.797655 | 0) 0.051 us | __enqueue_entity();
|
611
|
+
7238523.797656 | 0) 3.432 us | }
|
612
|
+
7238523.797656 | 0) 0.049 us | hrtick_update();
|
613
|
+
7238523.797657 | 0) 7.552 us | }
|
614
|
+
7238523.797657 | 0) 8.414 us | }
|
615
|
+
7238523.797657 | 0) 8.753 us | }
|
616
|
+
7238523.797657 | 0) | ttwu_do_wakeup() {
|
617
|
+
7238523.797657 | 0) | check_preempt_curr() {
|
618
|
+
7238523.797657 | 0) | resched_task() {
|
619
|
+
7238523.797658 | 0) | xen_smp_send_reschedule() {
|
620
|
+
7238523.797658 | 0) | xen_send_IPI_one() {
|
621
|
+
7238523.797658 | 0) | notify_remote_via_irq() {
|
622
|
+
7238523.797658 | 0) | evtchn_from_irq() {
|
623
|
+
7238523.797658 | 0) | irq_get_irq_data() {
|
624
|
+
7238523.797659 | 0) 0.069 us | irq_to_desc();
|
625
|
+
7238523.797659 | 0) 0.504 us | }
|
626
|
+
7238523.797659 | 0) 0.869 us | }
|
627
|
+
7238523.797660 | 0) 1.940 us | } /* notify_remote_via_irq */
|
628
|
+
7238523.797660 | 0) 2.319 us | }
|
629
|
+
7238523.797660 | 0) 2.712 us | }
|
630
|
+
7238523.797661 | 0) 3.147 us | }
|
631
|
+
7238523.797661 | 0) 3.625 us | }
|
632
|
+
7238523.797662 | 0) 4.525 us | }
|
633
|
+
7238523.797662 | 0) 13.961 us | }
|
634
|
+
7238523.797662 | 0) 0.069 us | _raw_spin_unlock();
|
635
|
+
7238523.797663 | 0) 0.168 us | ttwu_stat();
|
636
|
+
7238523.797663 | 0) 0.076 us | _raw_spin_unlock_irqrestore();
|
637
|
+
7238523.797664 | 0) 19.821 us | }
|
638
|
+
7238523.797664 | 0) 20.301 us | }
|
639
|
+
7238523.797664 | 0) 20.796 us | }
|
640
|
+
7238523.797664 | 0) 21.367 us | }
|
641
|
+
7238523.797665 | 0) 0.071 us | _raw_spin_unlock_irqrestore();
|
642
|
+
7238523.797665 | 0) 22.621 us | }
|
643
|
+
7238523.797666 | 0) | irq_exit() {
|
644
|
+
7238523.797666 | 0) 0.085 us | idle_cpu();
|
645
|
+
7238523.797666 | 0) 0.106 us | rcu_irq_exit();
|
646
|
+
7238523.797667 | 0) 1.220 us | }
|
647
|
+
7238523.797667 | 0) 25.712 us | }
|
648
|
+
7238523.797668 | 0) 0.138 us | add_interrupt_randomness();
|
649
|
+
7238523.797668 | 0) 0.092 us | note_interrupt();
|
650
|
+
7238523.797669 | 0) 27.713 us | }
|
651
|
+
7238523.797669 | 0) 30.163 us | }
|
652
|
+
7238523.797669 | 0) 31.017 us | }
|
653
|
+
7238523.797670 | 0) 33.953 us | }
|
654
|
+
7238523.797670 | 0) 34.384 us | }
|
655
|
+
7238523.797670 | 0) | irq_exit() {
|
656
|
+
7238523.797671 | 0) 0.079 us | idle_cpu();
|
657
|
+
7238523.797671 | 0) 0.072 us | rcu_irq_exit();
|
658
|
+
7238523.797672 | 0) 1.023 us | }
|
659
|
+
7238523.797672 | 0) 37.789 us | }
|
660
|
+
7238523.797672 | 0) 39.298 us | }
|
661
|
+
7238523.797673 | 0) 159502.1 us | }
|
662
|
+
7238523.797673 | 0) 159502.8 us | }
|
663
|
+
7238523.797673 | 0) 159503.5 us | }
|
664
|
+
7238523.797674 | 0) 0.112 us | down_read();
|
665
|
+
7238523.797675 | 0) | copy_from_read_buf() {
|
666
|
+
7238523.797676 | 0) | tty_audit_add_data() {
|
667
|
+
7238523.797676 | 0) 0.226 us | _raw_spin_lock_irqsave();
|
668
|
+
7238523.797677 | 0) 0.075 us | _raw_spin_unlock_irqrestore();
|
669
|
+
7238523.797677 | 0) 0.101 us | _raw_spin_lock_irqsave();
|
670
|
+
7238523.797678 | 0) 0.068 us | _raw_spin_unlock_irqrestore();
|
671
|
+
7238523.797679 | 0) 2.656 us | }
|
672
|
+
7238523.797679 | 0) 3.762 us | }
|
673
|
+
7238523.797679 | 0) 0.145 us | copy_from_read_buf();
|
674
|
+
7238523.797680 | 0) 0.068 us | n_tty_set_room();
|
675
|
+
7238523.797680 | 0) 0.058 us | n_tty_write_wakeup();
|
676
|
+
7238523.797681 | 0) | __wake_up() {
|
677
|
+
7238523.797682 | 0) 0.060 us | _raw_spin_lock_irqsave();
|
678
|
+
7238523.797682 | 0) | __wake_up_common() {
|
679
|
+
7238523.797683 | 0) 0.083 us | pollwake();
|
680
|
+
7238523.797683 | 0) 0.739 us | }
|
681
|
+
7238523.797683 | 0) 0.069 us | _raw_spin_unlock_irqrestore();
|
682
|
+
7238523.797684 | 0) 2.745 us | }
|
683
|
+
7238523.797684 | 0) 0.061 us | n_tty_set_room();
|
684
|
+
7238523.797685 | 0) 0.074 us | up_read();
|
685
|
+
7238523.797685 | 0) | remove_wait_queue() {
|
686
|
+
7238523.797685 | 0) 0.075 us | _raw_spin_lock_irqsave();
|
687
|
+
7238523.797686 | 0) 0.070 us | _raw_spin_unlock_irqrestore();
|
688
|
+
7238523.797686 | 0) 1.110 us | }
|
689
|
+
7238523.797687 | 0) 0.146 us | mutex_unlock();
|
690
|
+
7238523.797687 | 0) 159524.0 us | }
|
691
|
+
7238523.797688 | 0) | tty_ldisc_deref() {
|
692
|
+
7238523.797688 | 0) 0.070 us | ldsem_up_read();
|
693
|
+
7238523.797689 | 0) 0.739 us | }
|
694
|
+
7238523.797689 | 0) 0.066 us | get_seconds();
|
695
|
+
7238523.797690 | 0) 159528.3 us | }
|
696
|
+
7238523.797690 | 0) 0.298 us | __fsnotify_parent();
|
697
|
+
7238523.797691 | 0) 0.179 us | fsnotify();
|
698
|
+
7238523.797692 | 0) 159534.6 us | }
|
699
|
+
7238523.797762 | 0) | vfs_read() {
|
700
|
+
7238523.797763 | 0) | rw_verify_area() {
|
701
|
+
7238523.797763 | 0) | security_file_permission() {
|
702
|
+
7238523.797764 | 0) | apparmor_file_permission() {
|
703
|
+
7238523.797764 | 0) 0.165 us | common_file_perm();
|
704
|
+
7238523.797765 | 0) 0.732 us | }
|
705
|
+
7238523.797765 | 0) 0.081 us | __fsnotify_parent();
|
706
|
+
7238523.797766 | 0) 0.094 us | fsnotify();
|
707
|
+
7238523.797766 | 0) 2.711 us | }
|
708
|
+
7238523.797767 | 0) 3.386 us | }
|
709
|
+
7238523.797767 | 0) | tty_read() {
|
710
|
+
7238523.797767 | 0) 0.077 us | tty_paranoia_check();
|
711
|
+
7238523.797768 | 0) | tty_ldisc_ref_wait() {
|
712
|
+
7238523.797768 | 0) 0.083 us | ldsem_down_read();
|
713
|
+
7238523.797769 | 0) 0.686 us | }
|
714
|
+
7238523.797769 | 0) | n_tty_read() {
|
715
|
+
7238523.797770 | 0) 0.071 us | _raw_spin_lock_irq();
|
716
|
+
7238523.797770 | 0) 0.111 us | mutex_lock_interruptible();
|
717
|
+
7238523.797771 | 0) 0.072 us | down_read();
|
718
|
+
7238523.797771 | 0) | add_wait_queue() {
|
719
|
+
7238523.797772 | 0) 0.083 us | _raw_spin_lock_irqsave();
|
720
|
+
7238523.797772 | 0) 0.085 us | _raw_spin_unlock_irqrestore();
|
721
|
+
7238523.797773 | 0) 1.124 us | }
|
722
|
+
7238523.797773 | 0) 0.066 us | tty_hung_up_p();
|
723
|
+
7238523.797774 | 0) 0.090 us | n_tty_set_room();
|
724
|
+
7238523.797774 | 0) 0.064 us | up_read();
|
725
|
+
7238523.797775 | 0) | schedule_timeout() {
|
726
|
+
7238523.797775 | 0) | schedule() {
|
727
|
+
7238523.797775 | 0) | __schedule() {
|
728
|
+
7238523.797776 | 0) 0.083 us | rcu_note_context_switch();
|
729
|
+
7238523.797776 | 0) 0.078 us | _raw_spin_lock_irq();
|
730
|
+
7238523.797777 | 0) | deactivate_task() {
|
731
|
+
7238523.797777 | 0) | dequeue_task() {
|
732
|
+
7238523.797777 | 0) 0.191 us | update_rq_clock();
|
733
|
+
7238523.797778 | 0) | dequeue_task_fair() {
|
734
|
+
7238523.797778 | 0) | dequeue_entity() {
|
735
|
+
7238523.797779 | 0) | update_curr() {
|
736
|
+
7238523.797779 | 0) 0.179 us | cpuacct_charge();
|
737
|
+
7238523.797780 | 0) 0.902 us | }
|
738
|
+
7238523.797780 | 0) 0.070 us | __update_entity_load_avg_contrib();
|
739
|
+
7238523.797781 | 0) 0.152 us | update_cfs_rq_blocked_load();
|
740
|
+
7238523.797781 | 0) 0.073 us | clear_buddies();
|
741
|
+
7238523.797782 | 0) 0.074 us | account_entity_dequeue();
|
742
|
+
7238523.797783 | 0) | update_cfs_shares() {
|
743
|
+
7238523.797783 | 0) 0.111 us | update_curr();
|
744
|
+
7238523.797783 | 0) 0.082 us | account_entity_dequeue();
|
745
|
+
7238523.797784 | 0) 0.081 us | account_entity_enqueue();
|
746
|
+
7238523.797785 | 0) 2.330 us | }
|
747
|
+
7238523.797785 | 0) 6.633 us | } /* dequeue_entity */
|
748
|
+
7238523.797786 | 0) | dequeue_entity() {
|
749
|
+
7238523.797786 | 0) 0.078 us | update_curr();
|
750
|
+
7238523.797787 | 0) 0.086 us | update_cfs_rq_blocked_load();
|
751
|
+
7238523.797787 | 0) 0.076 us | clear_buddies();
|
752
|
+
7238523.797788 | 0) 0.079 us | account_entity_dequeue();
|
753
|
+
7238523.797789 | 0) 0.074 us | update_cfs_shares();
|
754
|
+
7238523.797789 | 0) 3.287 us | }
|
755
|
+
7238523.797789 | 0) 0.074 us | hrtick_update();
|
756
|
+
7238523.797790 | 0) 11.606 us | }
|
757
|
+
7238523.797790 | 0) 12.879 us | }
|
758
|
+
7238523.797790 | 0) 13.406 us | }
|
759
|
+
7238523.797791 | 0) | pick_next_task_fair() {
|
760
|
+
7238523.797791 | 0) 0.073 us | check_cfs_rq_runtime();
|
761
|
+
7238523.797792 | 0) | pick_next_entity() {
|
762
|
+
7238523.797792 | 0) 0.076 us | clear_buddies();
|
763
|
+
7238523.797793 | 0) 0.663 us | }
|
764
|
+
7238523.797793 | 0) | put_prev_entity() {
|
765
|
+
7238523.797793 | 0) 0.076 us | check_cfs_rq_runtime();
|
766
|
+
7238523.797794 | 0) 0.598 us | }
|
767
|
+
7238523.797794 | 0) | put_prev_entity() {
|
768
|
+
7238523.797794 | 0) 0.078 us | check_cfs_rq_runtime();
|
769
|
+
7238523.797795 | 0) 0.618 us | }
|
770
|
+
7238523.797795 | 0) | set_next_entity() {
|
771
|
+
7238523.797795 | 0) 0.096 us | update_stats_wait_end();
|
772
|
+
7238523.797796 | 0) 0.738 us | }
|
773
|
+
7238523.797796 | 0) 5.222 us | }
|
774
|
+
7238523.797797 | 0) 0.078 us | paravirt_start_context_switch();
|
775
|
+
7238523.797798 | 0) 0.071 us | xen_read_cr0();
|
776
|
+
7238523.797799 | 0) | xen_write_cr0() {
|
777
|
+
7238523.797799 | 0) 0.078 us | paravirt_get_lazy_mode();
|
778
|
+
7238523.797800 | 0) 0.084 us | __xen_mc_entry();
|
779
|
+
7238523.797800 | 0) 0.076 us | paravirt_get_lazy_mode();
|
780
|
+
7238523.797801 | 0) 1.798 us | }
|
781
|
+
7238523.797801 | 0) | xen_load_sp0() {
|
782
|
+
7238523.797801 | 0) 0.080 us | paravirt_get_lazy_mode();
|
783
|
+
7238523.797802 | 0) 0.076 us | __xen_mc_entry();
|
784
|
+
7238523.797802 | 0) 0.073 us | paravirt_get_lazy_mode();
|
785
|
+
7238523.797803 | 0) 1.623 us | }
|
786
|
+
7238523.797803 | 0) | xen_load_tls() {
|
787
|
+
7238523.797803 | 0) 0.082 us | paravirt_get_lazy_mode();
|
788
|
+
7238523.797804 | 0) 0.084 us | paravirt_get_lazy_mode();
|
789
|
+
7238523.797804 | 0) 0.136 us | load_TLS_descriptor();
|
790
|
+
7238523.797805 | 0) 0.072 us | load_TLS_descriptor();
|
791
|
+
7238523.797806 | 0) 0.080 us | load_TLS_descriptor();
|
792
|
+
7238523.797806 | 0) 0.088 us | paravirt_get_lazy_mode();
|
793
|
+
7238523.797807 | 0) 3.360 us | }
|
794
|
+
7238523.797807 | 0) | xen_end_context_switch() {
|
795
|
+
7238523.797807 | 0) 0.601 us | xen_mc_flush();
|
796
|
+
7238523.797808 | 0) 0.098 us | paravirt_end_context_switch();
|
797
|
+
7238523.797809 | 0) 1.902 us | }
|
798
|
+
7238524.005649 | 0) | finish_task_switch() {
|
799
|
+
7238524.005653 | 0) | xen_evtchn_do_upcall() {
|
800
|
+
7238524.005653 | 0) | irq_enter() {
|
801
|
+
7238524.005653 | 0) 0.138 us | rcu_irq_enter();
|
802
|
+
7238524.005654 | 0) 0.753 us | }
|
803
|
+
7238524.005654 | 0) 0.056 us | exit_idle();
|
804
|
+
7238524.005655 | 0) | __xen_evtchn_do_upcall() {
|
805
|
+
7238524.005655 | 0) | evtchn_2l_handle_events() {
|
806
|
+
7238524.005655 | 0) 0.057 us | irq_from_virq();
|
807
|
+
7238524.005656 | 0) | evtchn_from_irq() {
|
808
|
+
7238524.005656 | 0) | irq_get_irq_data() {
|
809
|
+
7238524.005656 | 0) 0.050 us | irq_to_desc();
|
810
|
+
7238524.005656 | 0) 0.499 us | }
|
811
|
+
7238524.005657 | 0) 0.958 us | }
|
812
|
+
7238524.005657 | 0) | get_evtchn_to_irq() {
|
813
|
+
7238524.005657 | 0) 0.057 us | evtchn_2l_max_channels();
|
814
|
+
7238524.005658 | 0) 0.400 us | }
|
815
|
+
7238524.005659 | 0) | generic_handle_irq() {
|
816
|
+
7238524.005659 | 0) 0.052 us | irq_to_desc();
|
817
|
+
7238524.005659 | 0) | handle_percpu_irq() {
|
818
|
+
7238524.005659 | 0) | ack_dynirq() {
|
819
|
+
7238524.005659 | 0) | evtchn_from_irq() {
|
820
|
+
7238524.005660 | 0) | irq_get_irq_data() {
|
821
|
+
7238524.005660 | 0) 0.056 us | irq_to_desc();
|
822
|
+
7238524.005660 | 0) 0.439 us | }
|
823
|
+
7238524.005660 | 0) 0.739 us | }
|
824
|
+
7238524.005661 | 0) 0.051 us | irq_move_irq();
|
825
|
+
7238524.005661 | 0) 0.051 us | evtchn_2l_clear_pending();
|
826
|
+
7238524.005661 | 0) 1.963 us | }
|
827
|
+
7238524.005662 | 0) | handle_irq_event_percpu() {
|
828
|
+
7238524.005662 | 0) | xen_irq_work_interrupt() {
|
829
|
+
7238524.005662 | 0) | irq_enter() {
|
830
|
+
7238524.005662 | 0) 0.053 us | rcu_irq_enter();
|
831
|
+
7238524.005663 | 0) 0.392 us | }
|
832
|
+
7238524.005663 | 0) | __wake_up() {
|
833
|
+
7238524.005663 | 0) 0.058 us | _raw_spin_lock_irqsave();
|
834
|
+
7238524.005664 | 0) | __wake_up_common() {
|
835
|
+
7238524.005664 | 0) | autoremove_wake_function() {
|
836
|
+
7238524.005664 | 0) | default_wake_function() {
|
837
|
+
7238524.005665 | 0) | try_to_wake_up() {
|
838
|
+
7238524.005665 | 0) 0.226 us | _raw_spin_lock_irqsave();
|
839
|
+
7238524.005665 | 0) 0.392 us | task_waking_fair();
|
840
|
+
7238524.005666 | 0) | select_task_rq_fair() {
|
841
|
+
7238524.005666 | 0) 0.067 us | source_load();
|
842
|
+
7238524.005667 | 0) 0.057 us | target_load();
|
843
|
+
7238524.005667 | 0) 0.065 us | idle_cpu();
|
844
|
+
7238524.005668 | 0) 0.050 us | cpus_share_cache();
|
845
|
+
7238524.005668 | 0) 0.080 us | idle_cpu();
|
846
|
+
7238524.005668 | 0) 2.053 us | }
|
847
|
+
7238524.005669 | 0) 0.051 us | _raw_spin_lock();
|
848
|
+
7238524.005669 | 0) | ttwu_do_activate.constprop.124() {
|
849
|
+
7238524.005669 | 0) | activate_task() {
|
850
|
+
7238524.005669 | 0) | enqueue_task() {
|
851
|
+
7238524.005669 | 0) 0.165 us | update_rq_clock();
|
852
|
+
7238524.005670 | 0) | enqueue_task_fair() {
|
853
|
+
7238524.005670 | 0) | enqueue_entity() {
|
854
|
+
7238524.005670 | 0) 0.065 us | update_curr();
|
855
|
+
7238524.005671 | 0) 0.078 us | __compute_runnable_contrib.part.51();
|
856
|
+
7238524.005671 | 0) 0.070 us | __update_entity_load_avg_contrib();
|
857
|
+
7238524.005671 | 0) 0.051 us | update_cfs_rq_blocked_load();
|
858
|
+
7238524.005672 | 0) 0.069 us | account_entity_enqueue();
|
859
|
+
7238524.005672 | 0) 0.132 us | update_cfs_shares();
|
860
|
+
7238524.005673 | 0) 0.054 us | place_entity();
|
861
|
+
7238524.005673 | 0) 0.081 us | __enqueue_entity();
|
862
|
+
7238524.005673 | 0) 3.111 us | }
|
863
|
+
7238524.005673 | 0) | enqueue_entity() {
|
864
|
+
7238524.005674 | 0) 0.059 us | update_curr();
|
865
|
+
7238524.005674 | 0) 0.057 us | update_cfs_rq_blocked_load();
|
866
|
+
7238524.005674 | 0) 0.067 us | account_entity_enqueue();
|
867
|
+
7238524.005675 | 0) 0.082 us | update_cfs_shares();
|
868
|
+
7238524.005675 | 0) 0.120 us | place_entity();
|
869
|
+
7238524.005675 | 0) 0.051 us | __enqueue_entity();
|
870
|
+
7238524.005676 | 0) 2.075 us | }
|
871
|
+
7238524.005676 | 0) 0.049 us | hrtick_update();
|
872
|
+
7238524.005676 | 0) 6.167 us | }
|
873
|
+
7238524.005676 | 0) 6.979 us | }
|
874
|
+
7238524.005676 | 0) 7.317 us | }
|
875
|
+
7238524.005677 | 0) | ttwu_do_wakeup() {
|
876
|
+
7238524.005677 | 0) | check_preempt_curr() {
|
877
|
+
7238524.005677 | 0) | resched_task() {
|
878
|
+
7238524.005677 | 0) | xen_smp_send_reschedule() {
|
879
|
+
7238524.005677 | 0) | xen_send_IPI_one() {
|
880
|
+
7238524.005678 | 0) | notify_remote_via_irq() {
|
881
|
+
7238524.005678 | 0) | evtchn_from_irq() {
|
882
|
+
7238524.005678 | 0) | irq_get_irq_data() {
|
883
|
+
7238524.005678 | 0) 0.051 us | irq_to_desc();
|
884
|
+
7238524.005679 | 0) 0.545 us | }
|
885
|
+
7238524.005679 | 0) 0.910 us | }
|
886
|
+
7238524.005680 | 0) 1.962 us | } /* notify_remote_via_irq */
|
887
|
+
7238524.005680 | 0) 2.332 us | }
|
888
|
+
7238524.005680 | 0) 2.684 us | }
|
889
|
+
7238524.005681 | 0) 3.606 us | }
|
890
|
+
7238524.005681 | 0) 4.064 us | }
|
891
|
+
7238524.005682 | 0) 5.129 us | }
|
892
|
+
7238524.005682 | 0) 13.194 us | }
|
893
|
+
7238524.005683 | 0) 0.066 us | _raw_spin_unlock();
|
894
|
+
7238524.005683 | 0) 0.165 us | ttwu_stat();
|
895
|
+
7238524.005684 | 0) 0.070 us | _raw_spin_unlock_irqrestore();
|
896
|
+
7238524.005684 | 0) 19.634 us | }
|
897
|
+
7238524.005685 | 0) 20.080 us | }
|
898
|
+
7238524.005685 | 0) 20.608 us | }
|
899
|
+
7238524.005685 | 0) 21.348 us | }
|
900
|
+
7238524.005685 | 0) 0.084 us | _raw_spin_unlock_irqrestore();
|
901
|
+
7238524.005686 | 0) 22.728 us | }
|
902
|
+
7238524.005686 | 0) | irq_exit() {
|
903
|
+
7238524.005687 | 0) 0.077 us | idle_cpu();
|
904
|
+
7238524.005687 | 0) 0.093 us | rcu_irq_exit();
|
905
|
+
7238524.005688 | 0) 1.101 us | }
|
906
|
+
7238524.005688 | 0) 25.644 us | }
|
907
|
+
7238524.005688 | 0) 0.138 us | add_interrupt_randomness();
|
908
|
+
7238524.005689 | 0) 0.083 us | note_interrupt();
|
909
|
+
7238524.005689 | 0) 27.672 us | }
|
910
|
+
7238524.005690 | 0) 30.410 us | }
|
911
|
+
7238524.005690 | 0) 31.458 us | }
|
912
|
+
7238524.005690 | 0) 35.276 us | }
|
913
|
+
7238524.005691 | 0) 35.797 us | }
|
914
|
+
7238524.005691 | 0) | irq_exit() {
|
915
|
+
7238524.005691 | 0) 0.066 us | idle_cpu();
|
916
|
+
7238524.005692 | 0) 0.080 us | rcu_irq_exit();
|
917
|
+
7238524.005692 | 0) 1.110 us | }
|
918
|
+
7238524.005693 | 0) 39.440 us | }
|
919
|
+
7238524.005693 | 0) 41.142 us | }
|
920
|
+
7238524.005694 | 0) 207918.1 us | }
|
921
|
+
7238524.005694 | 0) 207918.7 us | }
|
922
|
+
7238524.005694 | 0) 207919.4 us | }
|
923
|
+
7238524.005695 | 0) 0.068 us | down_read();
|
924
|
+
7238524.005696 | 0) | copy_from_read_buf() {
|
925
|
+
7238524.005697 | 0) | tty_audit_add_data() {
|
926
|
+
7238524.005697 | 0) 0.233 us | _raw_spin_lock_irqsave();
|
927
|
+
7238524.005698 | 0) 0.076 us | _raw_spin_unlock_irqrestore();
|
928
|
+
7238524.005699 | 0) 0.076 us | _raw_spin_lock_irqsave();
|
929
|
+
7238524.005699 | 0) 0.078 us | _raw_spin_unlock_irqrestore();
|
930
|
+
7238524.005700 | 0) 2.696 us | }
|
931
|
+
7238524.005700 | 0) 4.335 us | }
|
932
|
+
7238524.005701 | 0) 0.086 us | copy_from_read_buf();
|
933
|
+
7238524.005701 | 0) 0.074 us | n_tty_set_room();
|
934
|
+
7238524.005702 | 0) 0.085 us | n_tty_write_wakeup();
|
935
|
+
7238524.005702 | 0) | __wake_up() {
|
936
|
+
7238524.005703 | 0) 0.061 us | _raw_spin_lock_irqsave();
|
937
|
+
7238524.005703 | 0) | __wake_up_common() {
|
938
|
+
7238524.005703 | 0) 0.080 us | pollwake();
|
939
|
+
7238524.005704 | 0) 0.687 us | }
|
940
|
+
7238524.005704 | 0) 0.063 us | _raw_spin_unlock_irqrestore();
|
941
|
+
7238524.005705 | 0) 2.040 us | }
|
942
|
+
7238524.005705 | 0) 0.071 us | n_tty_set_room();
|
943
|
+
7238524.005706 | 0) 0.074 us | up_read();
|
944
|
+
7238524.005706 | 0) | remove_wait_queue() {
|
945
|
+
7238524.005706 | 0) 0.074 us | _raw_spin_lock_irqsave();
|
946
|
+
7238524.005707 | 0) 0.069 us | _raw_spin_unlock_irqrestore();
|
947
|
+
7238524.005707 | 0) 1.076 us | }
|
948
|
+
7238524.005708 | 0) 0.139 us | mutex_unlock();
|
949
|
+
7238524.005708 | 0) 207939.0 us | }
|
950
|
+
7238524.005709 | 0) | tty_ldisc_deref() {
|
951
|
+
7238524.005709 | 0) 0.077 us | ldsem_up_read();
|
952
|
+
7238524.005710 | 0) 0.702 us | }
|
953
|
+
7238524.005710 | 0) 0.068 us | get_seconds();
|
954
|
+
7238524.005711 | 0) 207943.4 us | }
|
955
|
+
7238524.005712 | 0) 0.301 us | __fsnotify_parent();
|
956
|
+
7238524.005713 | 0) 0.157 us | fsnotify();
|
957
|
+
7238524.005713 | 0) 207950.3 us | }
|
958
|
+
7238524.005783 | 0) | vfs_read() {
|
959
|
+
7238524.005784 | 0) | rw_verify_area() {
|
960
|
+
7238524.005784 | 0) | security_file_permission() {
|
961
|
+
7238524.005785 | 0) | apparmor_file_permission() {
|
962
|
+
7238524.005785 | 0) 0.164 us | common_file_perm();
|
963
|
+
7238524.005786 | 0) 0.790 us | }
|
964
|
+
7238524.005786 | 0) 0.080 us | __fsnotify_parent();
|
965
|
+
7238524.005787 | 0) 0.094 us | fsnotify();
|
966
|
+
7238524.005787 | 0) 2.683 us | }
|
967
|
+
7238524.005788 | 0) 3.313 us | }
|
968
|
+
7238524.005788 | 0) | tty_read() {
|
969
|
+
7238524.005788 | 0) 0.087 us | tty_paranoia_check();
|
970
|
+
7238524.005789 | 0) | tty_ldisc_ref_wait() {
|
971
|
+
7238524.005789 | 0) 0.080 us | ldsem_down_read();
|
972
|
+
7238524.005790 | 0) 0.683 us | }
|
973
|
+
7238524.005790 | 0) | n_tty_read() {
|
974
|
+
7238524.005791 | 0) 0.080 us | _raw_spin_lock_irq();
|
975
|
+
7238524.005791 | 0) 0.104 us | mutex_lock_interruptible();
|
976
|
+
7238524.005792 | 0) 0.070 us | down_read();
|
977
|
+
7238524.005792 | 0) | add_wait_queue() {
|
978
|
+
7238524.005793 | 0) 0.079 us | _raw_spin_lock_irqsave();
|
979
|
+
7238524.005793 | 0) 0.087 us | _raw_spin_unlock_irqrestore();
|
980
|
+
7238524.005794 | 0) 1.147 us | }
|
981
|
+
7238524.005794 | 0) 0.078 us | tty_hung_up_p();
|
982
|
+
7238524.005795 | 0) 0.071 us | n_tty_set_room();
|
983
|
+
7238524.005795 | 0) 0.077 us | up_read();
|
984
|
+
7238524.005796 | 0) | schedule_timeout() {
|
985
|
+
7238524.005796 | 0) | schedule() {
|
986
|
+
7238524.005796 | 0) | __schedule() {
|
987
|
+
7238524.005797 | 0) 0.087 us | rcu_note_context_switch();
|
988
|
+
7238524.005797 | 0) 0.075 us | _raw_spin_lock_irq();
|
989
|
+
7238524.005798 | 0) | deactivate_task() {
|
990
|
+
7238524.005798 | 0) | dequeue_task() {
|
991
|
+
7238524.005798 | 0) 0.177 us | update_rq_clock();
|
992
|
+
7238524.005799 | 0) | dequeue_task_fair() {
|
993
|
+
7238524.005799 | 0) | dequeue_entity() {
|
994
|
+
7238524.005800 | 0) | update_curr() {
|
995
|
+
7238524.005800 | 0) 0.334 us | cpuacct_charge();
|
996
|
+
7238524.005801 | 0) 1.199 us | }
|
997
|
+
7238524.005802 | 0) 0.081 us | __update_entity_load_avg_contrib();
|
998
|
+
7238524.005802 | 0) 0.064 us | update_cfs_rq_blocked_load();
|
999
|
+
7238524.005803 | 0) 0.076 us | clear_buddies();
|
1000
|
+
7238524.005803 | 0) 0.079 us | account_entity_dequeue();
|
1001
|
+
7238524.005804 | 0) | update_cfs_shares() {
|
1002
|
+
7238524.005804 | 0) 0.108 us | update_curr();
|
1003
|
+
7238524.005805 | 0) 0.083 us | account_entity_dequeue();
|
1004
|
+
7238524.005805 | 0) 0.084 us | account_entity_enqueue();
|
1005
|
+
7238524.005806 | 0) 1.869 us | }
|
1006
|
+
7238524.005806 | 0) 6.530 us | } /* dequeue_entity */
|
1007
|
+
7238524.005807 | 0) | dequeue_entity() {
|
1008
|
+
7238524.005807 | 0) 0.104 us | update_curr();
|
1009
|
+
7238524.005808 | 0) 0.115 us | __update_entity_load_avg_contrib();
|
1010
|
+
7238524.005808 | 0) 0.069 us | update_cfs_rq_blocked_load();
|
1011
|
+
7238524.005809 | 0) 0.066 us | clear_buddies();
|
1012
|
+
7238524.005809 | 0) 0.086 us | account_entity_dequeue();
|
1013
|
+
7238524.005810 | 0) 0.102 us | update_cfs_shares();
|
1014
|
+
7238524.005811 | 0) 3.907 us | }
|
1015
|
+
7238524.005811 | 0) 0.071 us | hrtick_update();
|
1016
|
+
7238524.005812 | 0) 12.301 us | }
|
1017
|
+
7238524.005812 | 0) 13.546 us | }
|
1018
|
+
7238524.005812 | 0) 14.105 us | }
|
1019
|
+
7238524.005812 | 0) | pick_next_task_fair() {
|
1020
|
+
7238524.005813 | 0) 0.078 us | check_cfs_rq_runtime();
|
1021
|
+
7238524.005813 | 0) | pick_next_entity() {
|
1022
|
+
7238524.005814 | 0) 0.071 us | clear_buddies();
|
1023
|
+
7238524.005815 | 0) 0.585 us | }
|
1024
|
+
7238524.005815 | 0) | put_prev_entity() {
|
1025
|
+
7238524.005815 | 0) 0.073 us | check_cfs_rq_runtime();
|
1026
|
+
7238524.005816 | 0) 0.717 us | }
|
1027
|
+
7238524.005816 | 0) | put_prev_entity() {
|
1028
|
+
7238524.005817 | 0) 0.080 us | check_cfs_rq_runtime();
|
1029
|
+
7238524.005817 | 0) 0.687 us | }
|
1030
|
+
7238524.005817 | 0) | set_next_entity() {
|
1031
|
+
7238524.005818 | 0) 0.091 us | update_stats_wait_end();
|
1032
|
+
7238524.005818 | 0) 0.786 us | }
|
1033
|
+
7238524.005819 | 0) 6.135 us | }
|
1034
|
+
7238524.005820 | 0) 0.091 us | paravirt_start_context_switch();
|
1035
|
+
7238524.005821 | 0) 0.089 us | xen_read_cr0();
|
1036
|
+
7238524.005821 | 0) | xen_write_cr0() {
|
1037
|
+
7238524.005821 | 0) 0.078 us | paravirt_get_lazy_mode();
|
1038
|
+
7238524.005822 | 0) 0.083 us | __xen_mc_entry();
|
1039
|
+
7238524.005823 | 0) 0.074 us | paravirt_get_lazy_mode();
|
1040
|
+
7238524.005823 | 0) 1.657 us | }
|
1041
|
+
7238524.005823 | 0) | xen_load_sp0() {
|
1042
|
+
7238524.005824 | 0) 0.074 us | paravirt_get_lazy_mode();
|
1043
|
+
7238524.005824 | 0) 0.083 us | __xen_mc_entry();
|
1044
|
+
7238524.005825 | 0) 0.087 us | paravirt_get_lazy_mode();
|
1045
|
+
7238524.005825 | 0) 1.764 us | }
|
1046
|
+
7238524.005826 | 0) | xen_load_tls() {
|
1047
|
+
7238524.005826 | 0) 0.077 us | paravirt_get_lazy_mode();
|
1048
|
+
7238524.005826 | 0) 0.084 us | paravirt_get_lazy_mode();
|
1049
|
+
7238524.005827 | 0) 0.150 us | load_TLS_descriptor();
|
1050
|
+
7238524.005828 | 0) 0.082 us | load_TLS_descriptor();
|
1051
|
+
7238524.005828 | 0) 0.084 us | load_TLS_descriptor();
|
1052
|
+
7238524.005829 | 0) 0.076 us | paravirt_get_lazy_mode();
|
1053
|
+
7238524.005829 | 0) 3.388 us | }
|
1054
|
+
7238524.005829 | 0) | xen_end_context_switch() {
|
1055
|
+
7238524.005830 | 0) 0.731 us | xen_mc_flush();
|
1056
|
+
7238524.005831 | 0) 0.093 us | paravirt_end_context_switch();
|
1057
|
+
7238524.005831 | 0) 1.836 us | }
|
1058
|
+
7238524.141853 | 0) | finish_task_switch() {
|
1059
|
+
7238524.141857 | 0) | xen_evtchn_do_upcall() {
|
1060
|
+
7238524.141858 | 0) | irq_enter() {
|
1061
|
+
7238524.141858 | 0) 0.133 us | rcu_irq_enter();
|
1062
|
+
7238524.141859 | 0) 0.766 us | }
|
1063
|
+
7238524.141859 | 0) 0.056 us | exit_idle();
|
1064
|
+
7238524.141859 | 0) | __xen_evtchn_do_upcall() {
|
1065
|
+
7238524.141859 | 0) | evtchn_2l_handle_events() {
|
1066
|
+
7238524.141860 | 0) 0.049 us | irq_from_virq();
|
1067
|
+
7238524.141860 | 0) | evtchn_from_irq() {
|
1068
|
+
7238524.141860 | 0) | irq_get_irq_data() {
|
1069
|
+
7238524.141860 | 0) 0.058 us | irq_to_desc();
|
1070
|
+
7238524.141861 | 0) 0.498 us | }
|
1071
|
+
7238524.141861 | 0) 0.897 us | }
|
1072
|
+
7238524.141861 | 0) | get_evtchn_to_irq() {
|
1073
|
+
7238524.141861 | 0) 0.049 us | evtchn_2l_max_channels();
|
1074
|
+
7238524.141862 | 0) 0.392 us | }
|
1075
|
+
7238524.141862 | 0) | generic_handle_irq() {
|
1076
|
+
7238524.141862 | 0) 0.061 us | irq_to_desc();
|
1077
|
+
7238524.141862 | 0) | handle_percpu_irq() {
|
1078
|
+
7238524.141863 | 0) | ack_dynirq() {
|
1079
|
+
7238524.141863 | 0) | evtchn_from_irq() {
|
1080
|
+
7238524.141863 | 0) | irq_get_irq_data() {
|
1081
|
+
7238524.141863 | 0) 0.051 us | irq_to_desc();
|
1082
|
+
7238524.141863 | 0) 0.439 us | }
|
1083
|
+
7238524.141864 | 0) 0.745 us | }
|
1084
|
+
7238524.141864 | 0) 0.049 us | irq_move_irq();
|
1085
|
+
7238524.141864 | 0) 0.060 us | evtchn_2l_clear_pending();
|
1086
|
+
7238524.141864 | 0) 1.714 us | }
|
1087
|
+
7238524.141865 | 0) | handle_irq_event_percpu() {
|
1088
|
+
7238524.141865 | 0) | xen_irq_work_interrupt() {
|
1089
|
+
7238524.141865 | 0) | irq_enter() {
|
1090
|
+
7238524.141865 | 0) 0.053 us | rcu_irq_enter();
|
1091
|
+
7238524.141866 | 0) 0.371 us | }
|
1092
|
+
7238524.141866 | 0) | __wake_up() {
|
1093
|
+
7238524.141866 | 0) 0.051 us | _raw_spin_lock_irqsave();
|
1094
|
+
7238524.141867 | 0) | __wake_up_common() {
|
1095
|
+
7238524.141867 | 0) | autoremove_wake_function() {
|
1096
|
+
7238524.141867 | 0) | default_wake_function() {
|
1097
|
+
7238524.141867 | 0) | try_to_wake_up() {
|
1098
|
+
7238524.141868 | 0) 0.213 us | _raw_spin_lock_irqsave();
|
1099
|
+
7238524.141869 | 0) 0.196 us | task_waking_fair();
|
1100
|
+
7238524.141870 | 0) | select_task_rq_fair() {
|
1101
|
+
7238524.141870 | 0) 0.051 us | source_load();
|
1102
|
+
7238524.141870 | 0) 0.049 us | target_load();
|
1103
|
+
7238524.141871 | 0) 0.065 us | idle_cpu();
|
1104
|
+
7238524.141871 | 0) 0.051 us | cpus_share_cache();
|
1105
|
+
7238524.141872 | 0) 0.078 us | idle_cpu();
|
1106
|
+
7238524.141872 | 0) 2.427 us | }
|
1107
|
+
7238524.141873 | 0) 0.050 us | _raw_spin_lock();
|
1108
|
+
7238524.141873 | 0) | ttwu_do_activate.constprop.124() {
|
1109
|
+
7238524.141873 | 0) | activate_task() {
|
1110
|
+
7238524.141873 | 0) | enqueue_task() {
|
1111
|
+
7238524.141873 | 0) 0.170 us | update_rq_clock();
|
1112
|
+
7238524.141874 | 0) | enqueue_task_fair() {
|
1113
|
+
7238524.141874 | 0) | enqueue_entity() {
|
1114
|
+
7238524.141874 | 0) 0.058 us | update_curr();
|
1115
|
+
7238524.141875 | 0) 0.076 us | __compute_runnable_contrib.part.51();
|
1116
|
+
7238524.141875 | 0) 0.059 us | __update_entity_load_avg_contrib();
|
1117
|
+
7238524.141875 | 0) 0.060 us | update_cfs_rq_blocked_load();
|
1118
|
+
7238524.141876 | 0) 0.064 us | account_entity_enqueue();
|
1119
|
+
7238524.141876 | 0) 0.123 us | update_cfs_shares();
|
1120
|
+
7238524.141876 | 0) 0.055 us | place_entity();
|
1121
|
+
7238524.141877 | 0) 0.078 us | __enqueue_entity();
|
1122
|
+
7238524.141877 | 0) 3.039 us | }
|
1123
|
+
7238524.141877 | 0) | enqueue_entity() {
|
1124
|
+
7238524.141877 | 0) 0.065 us | update_curr();
|
1125
|
+
7238524.141878 | 0) 0.050 us | update_cfs_rq_blocked_load();
|
1126
|
+
7238524.141878 | 0) 0.049 us | account_entity_enqueue();
|
1127
|
+
7238524.141878 | 0) 0.081 us | update_cfs_shares();
|
1128
|
+
7238524.141879 | 0) 0.049 us | place_entity();
|
1129
|
+
7238524.141879 | 0) 0.051 us | __enqueue_entity();
|
1130
|
+
7238524.141879 | 0) 2.021 us | }
|
1131
|
+
7238524.141880 | 0) 0.049 us | hrtick_update();
|
1132
|
+
7238524.141880 | 0) 6.040 us | }
|
1133
|
+
7238524.141880 | 0) 6.874 us | }
|
1134
|
+
7238524.141880 | 0) 7.212 us | }
|
1135
|
+
7238524.141880 | 0) | ttwu_do_wakeup() {
|
1136
|
+
7238524.141881 | 0) | check_preempt_curr() {
|
1137
|
+
7238524.141881 | 0) | resched_task() {
|
1138
|
+
7238524.141881 | 0) | xen_smp_send_reschedule() {
|
1139
|
+
7238524.141881 | 0) | xen_send_IPI_one() {
|
1140
|
+
7238524.141881 | 0) | notify_remote_via_irq() {
|
1141
|
+
7238524.141881 | 0) | evtchn_from_irq() {
|
1142
|
+
7238524.141882 | 0) | irq_get_irq_data() {
|
1143
|
+
7238524.141882 | 0) 0.049 us | irq_to_desc();
|
1144
|
+
7238524.141882 | 0) 0.497 us | }
|
1145
|
+
7238524.141882 | 0) 0.860 us | }
|
1146
|
+
7238524.141883 | 0) 1.882 us | } /* notify_remote_via_irq */
|
1147
|
+
7238524.141884 | 0) 2.257 us | }
|
1148
|
+
7238524.141884 | 0) 2.619 us | }
|
1149
|
+
7238524.141884 | 0) 3.079 us | }
|
1150
|
+
7238524.141884 | 0) 3.526 us | }
|
1151
|
+
7238524.141885 | 0) 4.485 us | }
|
1152
|
+
7238524.141885 | 0) 12.333 us | }
|
1153
|
+
7238524.141885 | 0) 0.062 us | _raw_spin_unlock();
|
1154
|
+
7238524.141886 | 0) 0.169 us | ttwu_stat();
|
1155
|
+
7238524.141887 | 0) 0.076 us | _raw_spin_unlock_irqrestore();
|
1156
|
+
7238524.141887 | 0) 19.434 us | }
|
1157
|
+
7238524.141887 | 0) 19.909 us | }
|
1158
|
+
7238524.141888 | 0) 20.377 us | }
|
1159
|
+
7238524.141888 | 0) 21.020 us | }
|
1160
|
+
7238524.141888 | 0) 0.075 us | _raw_spin_unlock_irqrestore();
|
1161
|
+
7238524.141888 | 0) 22.268 us | }
|
1162
|
+
7238524.141889 | 0) | irq_exit() {
|
1163
|
+
7238524.141889 | 0) 0.087 us | idle_cpu();
|
1164
|
+
7238524.141889 | 0) 0.101 us | rcu_irq_exit();
|
1165
|
+
7238524.141890 | 0) 1.127 us | }
|
1166
|
+
7238524.141890 | 0) 25.163 us | }
|
1167
|
+
7238524.141891 | 0) 0.133 us | add_interrupt_randomness();
|
1168
|
+
7238524.141892 | 0) 0.083 us | note_interrupt();
|
1169
|
+
7238524.141892 | 0) 27.453 us | }
|
1170
|
+
7238524.141893 | 0) 30.024 us | }
|
1171
|
+
7238524.141893 | 0) 30.898 us | }
|
1172
|
+
7238524.141893 | 0) 33.683 us | }
|
1173
|
+
7238524.141893 | 0) 34.097 us | }
|
1174
|
+
7238524.141894 | 0) | irq_exit() {
|
1175
|
+
7238524.141894 | 0) 0.065 us | idle_cpu();
|
1176
|
+
7238524.141895 | 0) 0.076 us | rcu_irq_exit();
|
1177
|
+
7238524.141895 | 0) 1.135 us | }
|
1178
|
+
7238524.141895 | 0) 37.746 us | }
|
1179
|
+
7238524.141896 | 0) 39.634 us | }
|
1180
|
+
7238524.141897 | 0) 136100.0 us | }
|
1181
|
+
7238524.141897 | 0) 136100.6 us | }
|
1182
|
+
7238524.141897 | 0) 136101.4 us | }
|
1183
|
+
7238524.141898 | 0) 0.093 us | down_read();
|
1184
|
+
7238524.141899 | 0) | copy_from_read_buf() {
|
1185
|
+
7238524.141900 | 0) | tty_audit_add_data() {
|
1186
|
+
7238524.141900 | 0) 0.238 us | _raw_spin_lock_irqsave();
|
1187
|
+
7238524.141901 | 0) 0.069 us | _raw_spin_unlock_irqrestore();
|
1188
|
+
7238524.141901 | 0) 0.090 us | _raw_spin_lock_irqsave();
|
1189
|
+
7238524.141902 | 0) 0.077 us | _raw_spin_unlock_irqrestore();
|
1190
|
+
7238524.141902 | 0) 2.513 us | }
|
1191
|
+
7238524.141903 | 0) 3.632 us | }
|
1192
|
+
7238524.141903 | 0) 0.085 us | copy_from_read_buf();
|
1193
|
+
7238524.141904 | 0) 0.066 us | n_tty_set_room();
|
1194
|
+
7238524.141905 | 0) 0.067 us | n_tty_write_wakeup();
|
1195
|
+
7238524.141905 | 0) | __wake_up() {
|
1196
|
+
7238524.141906 | 0) 0.070 us | _raw_spin_lock_irqsave();
|
1197
|
+
7238524.141906 | 0) | __wake_up_common() {
|
1198
|
+
7238524.141906 | 0) 0.086 us | pollwake();
|
1199
|
+
7238524.141907 | 0) 0.620 us | }
|
1200
|
+
7238524.141907 | 0) 0.064 us | _raw_spin_unlock_irqrestore();
|
1201
|
+
7238524.141907 | 0) 1.980 us | }
|
1202
|
+
7238524.141908 | 0) 0.059 us | n_tty_set_room();
|
1203
|
+
7238524.141909 | 0) 0.071 us | up_read();
|
1204
|
+
7238524.141909 | 0) | remove_wait_queue() {
|
1205
|
+
7238524.141909 | 0) 0.079 us | _raw_spin_lock_irqsave();
|
1206
|
+
7238524.141910 | 0) 0.082 us | _raw_spin_unlock_irqrestore();
|
1207
|
+
7238524.141910 | 0) 1.164 us | }
|
1208
|
+
7238524.141910 | 0) 0.142 us | mutex_unlock();
|
1209
|
+
7238524.141911 | 0) 136120.9 us | }
|
1210
|
+
7238524.141911 | 0) | tty_ldisc_deref() {
|
1211
|
+
7238524.141912 | 0) 0.062 us | ldsem_up_read();
|
1212
|
+
7238524.141912 | 0) 0.593 us | }
|
1213
|
+
7238524.141912 | 0) 0.079 us | get_seconds();
|
1214
|
+
7238524.141913 | 0) 136125.1 us | }
|
1215
|
+
7238524.141914 | 0) 0.280 us | __fsnotify_parent();
|
1216
|
+
7238524.141915 | 0) 0.187 us | fsnotify();
|
1217
|
+
7238524.141915 | 0) 136131.2 us | }
|
1218
|
+
7238524.141988 | 0) | vfs_read() {
|
1219
|
+
7238524.141989 | 0) | rw_verify_area() {
|
1220
|
+
7238524.141989 | 0) | security_file_permission() {
|
1221
|
+
7238524.141989 | 0) | apparmor_file_permission() {
|
1222
|
+
7238524.141990 | 0) 0.149 us | common_file_perm();
|
1223
|
+
7238524.141990 | 0) 0.774 us | }
|
1224
|
+
7238524.141991 | 0) 0.079 us | __fsnotify_parent();
|
1225
|
+
7238524.141991 | 0) 0.095 us | fsnotify();
|
1226
|
+
7238524.141992 | 0) 2.558 us | }
|
1227
|
+
7238524.141992 | 0) 3.300 us | }
|
1228
|
+
7238524.141993 | 0) | tty_read() {
|
1229
|
+
7238524.141993 | 0) 0.076 us | tty_paranoia_check();
|
1230
|
+
7238524.141994 | 0) | tty_ldisc_ref_wait() {
|
1231
|
+
7238524.141994 | 0) 0.081 us | ldsem_down_read();
|
1232
|
+
7238524.141995 | 0) 0.689 us | }
|
1233
|
+
7238524.141995 | 0) | n_tty_read() {
|
1234
|
+
7238524.141995 | 0) 0.073 us | _raw_spin_lock_irq();
|
1235
|
+
7238524.141996 | 0) 0.110 us | mutex_lock_interruptible();
|
1236
|
+
7238524.141997 | 0) 0.069 us | down_read();
|
1237
|
+
7238524.141998 | 0) | add_wait_queue() {
|
1238
|
+
7238524.141998 | 0) 0.079 us | _raw_spin_lock_irqsave();
|
1239
|
+
7238524.141999 | 0) 0.078 us | _raw_spin_unlock_irqrestore();
|
1240
|
+
7238524.141999 | 0) 1.201 us | }
|
1241
|
+
7238524.142000 | 0) 0.067 us | tty_hung_up_p();
|
1242
|
+
7238524.142000 | 0) 0.078 us | n_tty_set_room();
|
1243
|
+
7238524.142001 | 0) 0.079 us | up_read();
|
1244
|
+
7238524.142001 | 0) | schedule_timeout() {
|
1245
|
+
7238524.142002 | 0) | schedule() {
|
1246
|
+
7238524.142002 | 0) | __schedule() {
|
1247
|
+
7238524.142002 | 0) 0.076 us | rcu_note_context_switch();
|
1248
|
+
7238524.142003 | 0) 0.080 us | _raw_spin_lock_irq();
|
1249
|
+
7238524.142004 | 0) | deactivate_task() {
|
1250
|
+
7238524.142004 | 0) | dequeue_task() {
|
1251
|
+
7238524.142004 | 0) 0.178 us | update_rq_clock();
|
1252
|
+
7238524.142005 | 0) | dequeue_task_fair() {
|
1253
|
+
7238524.142005 | 0) | dequeue_entity() {
|
1254
|
+
7238524.142005 | 0) | update_curr() {
|
1255
|
+
7238524.142006 | 0) 0.263 us | cpuacct_charge();
|
1256
|
+
7238524.142007 | 0) 0.965 us | }
|
1257
|
+
7238524.142007 | 0) 0.075 us | update_cfs_rq_blocked_load();
|
1258
|
+
7238524.142008 | 0) 0.065 us | clear_buddies();
|
1259
|
+
7238524.142008 | 0) 0.084 us | account_entity_dequeue();
|
1260
|
+
7238524.142009 | 0) | update_cfs_shares() {
|
1261
|
+
7238524.142009 | 0) 0.115 us | update_curr();
|
1262
|
+
7238524.142010 | 0) 0.084 us | account_entity_dequeue();
|
1263
|
+
7238524.142010 | 0) 0.068 us | account_entity_enqueue();
|
1264
|
+
7238524.142011 | 0) 1.754 us | }
|
1265
|
+
7238524.142011 | 0) 5.580 us | }
|
1266
|
+
7238524.142012 | 0) | dequeue_entity() {
|
1267
|
+
7238524.142012 | 0) 0.089 us | update_curr();
|
1268
|
+
7238524.142012 | 0) 0.101 us | update_cfs_rq_blocked_load();
|
1269
|
+
7238524.142013 | 0) 0.076 us | clear_buddies();
|
1270
|
+
7238524.142013 | 0) 0.078 us | account_entity_dequeue();
|
1271
|
+
7238524.142014 | 0) 0.076 us | update_cfs_shares();
|
1272
|
+
7238524.142015 | 0) 3.071 us | }
|
1273
|
+
7238524.142015 | 0) 0.078 us | hrtick_update();
|
1274
|
+
7238524.142016 | 0) 10.525 us | }
|
1275
|
+
7238524.142016 | 0) 11.803 us | }
|
1276
|
+
7238524.142016 | 0) 12.447 us | }
|
1277
|
+
7238524.142017 | 0) | pick_next_task_fair() {
|
1278
|
+
7238524.142017 | 0) 0.069 us | check_cfs_rq_runtime();
|
1279
|
+
7238524.142017 | 0) | pick_next_entity() {
|
1280
|
+
7238524.142018 | 0) 0.061 us | clear_buddies();
|
1281
|
+
7238524.142018 | 0) 0.601 us | }
|
1282
|
+
7238524.142019 | 0) | put_prev_entity() {
|
1283
|
+
7238524.142019 | 0) 0.069 us | check_cfs_rq_runtime();
|
1284
|
+
7238524.142019 | 0) 0.605 us | }
|
1285
|
+
7238524.142020 | 0) | put_prev_entity() {
|
1286
|
+
7238524.142020 | 0) 0.076 us | check_cfs_rq_runtime();
|
1287
|
+
7238524.142020 | 0) 0.609 us | }
|
1288
|
+
7238524.142021 | 0) | set_next_entity() {
|
1289
|
+
7238524.142021 | 0) 0.088 us | update_stats_wait_end();
|
1290
|
+
7238524.142022 | 0) 0.768 us | }
|
1291
|
+
7238524.142022 | 0) 5.183 us | }
|
1292
|
+
7238524.142023 | 0) 0.080 us | paravirt_start_context_switch();
|
1293
|
+
7238524.142024 | 0) 0.076 us | xen_read_cr0();
|
1294
|
+
7238524.142024 | 0) | xen_write_cr0() {
|
1295
|
+
7238524.142025 | 0) 0.088 us | paravirt_get_lazy_mode();
|
1296
|
+
7238524.142025 | 0) 0.096 us | __xen_mc_entry();
|
1297
|
+
7238524.142026 | 0) 0.083 us | paravirt_get_lazy_mode();
|
1298
|
+
7238524.142026 | 0) 1.802 us | }
|
1299
|
+
7238524.142026 | 0) | xen_load_sp0() {
|
1300
|
+
7238524.142027 | 0) 0.074 us | paravirt_get_lazy_mode();
|
1301
|
+
7238524.142027 | 0) 0.098 us | __xen_mc_entry();
|
1302
|
+
7238524.142028 | 0) 0.073 us | paravirt_get_lazy_mode();
|
1303
|
+
7238524.142029 | 0) 2.289 us | }
|
1304
|
+
7238524.142029 | 0) | xen_load_tls() {
|
1305
|
+
7238524.142029 | 0) 0.073 us | paravirt_get_lazy_mode();
|
1306
|
+
7238524.142030 | 0) 0.079 us | paravirt_get_lazy_mode();
|
1307
|
+
7238524.142031 | 0) 0.135 us | load_TLS_descriptor();
|
1308
|
+
7238524.142031 | 0) 0.082 us | load_TLS_descriptor();
|
1309
|
+
7238524.142032 | 0) 0.091 us | load_TLS_descriptor();
|
1310
|
+
7238524.142032 | 0) 0.081 us | paravirt_get_lazy_mode();
|
1311
|
+
7238524.142033 | 0) 3.306 us | }
|
1312
|
+
7238524.142033 | 0) | xen_end_context_switch() {
|
1313
|
+
7238524.142033 | 0) 0.697 us | xen_mc_flush();
|
1314
|
+
7238524.142034 | 0) 0.083 us | paravirt_end_context_switch();
|
1315
|
+
7238524.142035 | 0) 1.876 us | }
|
1316
|
+
7238524.269404 | 0) | finish_task_switch() {
|
1317
|
+
7238524.269408 | 0) | xen_evtchn_do_upcall() {
|
1318
|
+
7238524.269408 | 0) | irq_enter() {
|
1319
|
+
7238524.269408 | 0) 0.132 us | rcu_irq_enter();
|
1320
|
+
7238524.269409 | 0) 0.948 us | }
|
1321
|
+
7238524.269409 | 0) 0.063 us | exit_idle();
|
1322
|
+
7238524.269410 | 0) | __xen_evtchn_do_upcall() {
|
1323
|
+
7238524.269410 | 0) | evtchn_2l_handle_events() {
|
1324
|
+
7238524.269410 | 0) 0.057 us | irq_from_virq();
|
1325
|
+
7238524.269411 | 0) | evtchn_from_irq() {
|
1326
|
+
7238524.269411 | 0) | irq_get_irq_data() {
|
1327
|
+
7238524.269411 | 0) 0.058 us | irq_to_desc();
|
1328
|
+
7238524.269412 | 0) 0.579 us | }
|
1329
|
+
7238524.269412 | 0) 0.898 us | }
|
1330
|
+
7238524.269412 | 0) | get_evtchn_to_irq() {
|
1331
|
+
7238524.269412 | 0) 0.049 us | evtchn_2l_max_channels();
|
1332
|
+
7238524.269412 | 0) 0.390 us | }
|
1333
|
+
7238524.269413 | 0) | generic_handle_irq() {
|
1334
|
+
7238524.269413 | 0) 0.051 us | irq_to_desc();
|
1335
|
+
7238524.269413 | 0) | handle_percpu_irq() {
|
1336
|
+
7238524.269413 | 0) | ack_dynirq() {
|
1337
|
+
7238524.269413 | 0) | evtchn_from_irq() {
|
1338
|
+
7238524.269414 | 0) | irq_get_irq_data() {
|
1339
|
+
7238524.269414 | 0) 0.057 us | irq_to_desc();
|
1340
|
+
7238524.269414 | 0) 0.446 us | }
|
1341
|
+
7238524.269414 | 0) 0.754 us | }
|
1342
|
+
7238524.269414 | 0) 0.057 us | irq_move_irq();
|
1343
|
+
7238524.269415 | 0) 0.057 us | evtchn_2l_clear_pending();
|
1344
|
+
7238524.269415 | 0) 1.718 us | }
|
1345
|
+
7238524.269415 | 0) | handle_irq_event_percpu() {
|
1346
|
+
7238524.269416 | 0) | xen_irq_work_interrupt() {
|
1347
|
+
7238524.269416 | 0) | irq_enter() {
|
1348
|
+
7238524.269416 | 0) 0.059 us | rcu_irq_enter();
|
1349
|
+
7238524.269416 | 0) 0.380 us | }
|
1350
|
+
7238524.269417 | 0) | __wake_up() {
|
1351
|
+
7238524.269417 | 0) 0.051 us | _raw_spin_lock_irqsave();
|
1352
|
+
7238524.269417 | 0) | __wake_up_common() {
|
1353
|
+
7238524.269417 | 0) | autoremove_wake_function() {
|
1354
|
+
7238524.269418 | 0) | default_wake_function() {
|
1355
|
+
7238524.269418 | 0) | try_to_wake_up() {
|
1356
|
+
7238524.269418 | 0) 0.230 us | _raw_spin_lock_irqsave();
|
1357
|
+
7238524.269419 | 0) 0.197 us | task_waking_fair();
|
1358
|
+
7238524.269419 | 0) | select_task_rq_fair() {
|
1359
|
+
7238524.269419 | 0) 0.050 us | source_load();
|
1360
|
+
7238524.269420 | 0) 0.057 us | target_load();
|
1361
|
+
7238524.269420 | 0) 0.065 us | idle_cpu();
|
1362
|
+
7238524.269421 | 0) 0.055 us | cpus_share_cache();
|
1363
|
+
7238524.269421 | 0) 0.076 us | idle_cpu();
|
1364
|
+
7238524.269421 | 0) 2.041 us | }
|
1365
|
+
7238524.269422 | 0) 0.050 us | _raw_spin_lock();
|
1366
|
+
7238524.269422 | 0) | ttwu_do_activate.constprop.124() {
|
1367
|
+
7238524.269422 | 0) | activate_task() {
|
1368
|
+
7238524.269422 | 0) | enqueue_task() {
|
1369
|
+
7238524.269422 | 0) 0.175 us | update_rq_clock();
|
1370
|
+
7238524.269423 | 0) | enqueue_task_fair() {
|
1371
|
+
7238524.269423 | 0) | enqueue_entity() {
|
1372
|
+
7238524.269423 | 0) 0.065 us | update_curr();
|
1373
|
+
7238524.269424 | 0) 0.070 us | __compute_runnable_contrib.part.51();
|
1374
|
+
7238524.269424 | 0) 0.052 us | __update_entity_load_avg_contrib();
|
1375
|
+
7238524.269424 | 0) 0.050 us | update_cfs_rq_blocked_load();
|
1376
|
+
7238524.269425 | 0) 0.059 us | account_entity_enqueue();
|
1377
|
+
7238524.269426 | 0) 0.134 us | update_cfs_shares();
|
1378
|
+
7238524.269426 | 0) 0.055 us | place_entity();
|
1379
|
+
7238524.269427 | 0) 0.083 us | __enqueue_entity();
|
1380
|
+
7238524.269427 | 0) 4.026 us | }
|
1381
|
+
7238524.269427 | 0) | enqueue_entity() {
|
1382
|
+
7238524.269428 | 0) 0.065 us | update_curr();
|
1383
|
+
7238524.269428 | 0) 0.051 us | update_cfs_rq_blocked_load();
|
1384
|
+
7238524.269428 | 0) 0.058 us | account_entity_enqueue();
|
1385
|
+
7238524.269429 | 0) 0.082 us | update_cfs_shares();
|
1386
|
+
7238524.269429 | 0) 0.105 us | place_entity();
|
1387
|
+
7238524.269429 | 0) 0.049 us | __enqueue_entity();
|
1388
|
+
7238524.269430 | 0) 2.247 us | }
|
1389
|
+
7238524.269430 | 0) 0.050 us | hrtick_update();
|
1390
|
+
7238524.269430 | 0) 7.310 us | }
|
1391
|
+
7238524.269430 | 0) 8.101 us | }
|
1392
|
+
7238524.269431 | 0) 8.449 us | }
|
1393
|
+
7238524.269431 | 0) | ttwu_do_wakeup() {
|
1394
|
+
7238524.269431 | 0) | check_preempt_curr() {
|
1395
|
+
7238524.269431 | 0) | resched_task() {
|
1396
|
+
7238524.269431 | 0) | xen_smp_send_reschedule() {
|
1397
|
+
7238524.269432 | 0) | xen_send_IPI_one() {
|
1398
|
+
7238524.269432 | 0) | notify_remote_via_irq() {
|
1399
|
+
7238524.269432 | 0) | evtchn_from_irq() {
|
1400
|
+
7238524.269432 | 0) | irq_get_irq_data() {
|
1401
|
+
7238524.269432 | 0) 0.051 us | irq_to_desc();
|
1402
|
+
7238524.269433 | 0) 0.493 us | }
|
1403
|
+
7238524.269433 | 0) 0.857 us | }
|
1404
|
+
7238524.269434 | 0) 1.909 us | } /* notify_remote_via_irq */
|
1405
|
+
7238524.269434 | 0) 2.288 us | }
|
1406
|
+
7238524.269434 | 0) 2.655 us | }
|
1407
|
+
7238524.269434 | 0) 3.127 us | }
|
1408
|
+
7238524.269435 | 0) 3.590 us | }
|
1409
|
+
7238524.269435 | 0) 4.506 us | }
|
1410
|
+
7238524.269436 | 0) 13.594 us | }
|
1411
|
+
7238524.269436 | 0) 0.070 us | _raw_spin_unlock();
|
1412
|
+
7238524.269436 | 0) 0.163 us | ttwu_stat();
|
1413
|
+
7238524.269437 | 0) 0.080 us | _raw_spin_unlock_irqrestore();
|
1414
|
+
7238524.269438 | 0) 19.508 us | }
|
1415
|
+
7238524.269438 | 0) 19.991 us | }
|
1416
|
+
7238524.269438 | 0) 20.486 us | }
|
1417
|
+
7238524.269438 | 0) 21.024 us | }
|
1418
|
+
7238524.269438 | 0) 0.076 us | _raw_spin_unlock_irqrestore();
|
1419
|
+
7238524.269439 | 0) 22.247 us | }
|
1420
|
+
7238524.269439 | 0) | irq_exit() {
|
1421
|
+
7238524.269439 | 0) 0.101 us | idle_cpu();
|
1422
|
+
7238524.269440 | 0) 0.099 us | rcu_irq_exit();
|
1423
|
+
7238524.269441 | 0) 1.207 us | }
|
1424
|
+
7238524.269441 | 0) 25.035 us | }
|
1425
|
+
7238524.269441 | 0) 0.131 us | add_interrupt_randomness();
|
1426
|
+
7238524.269442 | 0) 0.076 us | note_interrupt();
|
1427
|
+
7238524.269442 | 0) 26.909 us | }
|
1428
|
+
7238524.269443 | 0) 29.377 us | }
|
1429
|
+
7238524.269443 | 0) 30.139 us | }
|
1430
|
+
7238524.269443 | 0) 32.759 us | }
|
1431
|
+
7238524.269443 | 0) 33.204 us | }
|
1432
|
+
7238524.269444 | 0) | irq_exit() {
|
1433
|
+
7238524.269444 | 0) | __do_softirq() {
|
1434
|
+
7238524.269444 | 0) 0.068 us | msecs_to_jiffies();
|
1435
|
+
7238524.269445 | 0) | rcu_process_callbacks() {
|
1436
|
+
7238524.269445 | 0) 0.070 us | note_gp_changes();
|
1437
|
+
7238524.269445 | 0) 0.064 us | _raw_spin_lock_irqsave();
|
1438
|
+
7238524.269446 | 0) 0.135 us | rcu_accelerate_cbs();
|
1439
|
+
7238524.269447 | 0) | rcu_report_qs_rnp() {
|
1440
|
+
7238524.269447 | 0) 0.061 us | _raw_spin_unlock_irqrestore();
|
1441
|
+
7238524.269448 | 0) 0.779 us | }
|
1442
|
+
7238524.269448 | 0) 0.081 us | cpu_needs_another_gp();
|
1443
|
+
7238524.269449 | 0) | file_free_rcu() {
|
1444
|
+
7238524.269449 | 0) 0.291 us | kmem_cache_free();
|
1445
|
+
7238524.269450 | 0) 1.139 us | }
|
1446
|
+
7238524.269451 | 0) | put_cred_rcu() {
|
1447
|
+
7238524.269451 | 0) | security_cred_free() {
|
1448
|
+
7238524.269452 | 0) | apparmor_cred_free() {
|
1449
|
+
7238524.269453 | 0) | aa_free_task_context() {
|
1450
|
+
7238524.269453 | 0) | kzfree() {
|
1451
|
+
7238524.269454 | 0) 0.380 us | ksize();
|
1452
|
+
7238524.269455 | 0) 0.147 us | kfree();
|
1453
|
+
7238524.269455 | 0) 1.602 us | }
|
1454
|
+
7238524.269455 | 0) 2.631 us | }
|
1455
|
+
7238524.269456 | 0) 3.611 us | } /* apparmor_cred_free */
|
1456
|
+
7238524.269456 | 0) 4.927 us | }
|
1457
|
+
7238524.269457 | 0) 0.071 us | key_put();
|
1458
|
+
7238524.269457 | 0) 0.071 us | key_put();
|
1459
|
+
7238524.269458 | 0) 0.065 us | key_put();
|
1460
|
+
7238524.269458 | 0) 0.066 us | key_put();
|
1461
|
+
7238524.269459 | 0) 0.390 us | free_uid();
|
1462
|
+
7238524.269460 | 0) 0.178 us | kmem_cache_free();
|
1463
|
+
7238524.269460 | 0) 9.429 us | }
|
1464
|
+
7238524.269461 | 0) 0.099 us | note_gp_changes();
|
1465
|
+
7238524.269461 | 0) 0.080 us | cpu_needs_another_gp();
|
1466
|
+
7238524.269462 | 0) 16.796 us | }
|
1467
|
+
7238524.269462 | 0) 0.068 us | rcu_bh_qs();
|
1468
|
+
7238524.269462 | 0) 0.066 us | __local_bh_enable();
|
1469
|
+
7238524.269463 | 0) 18.770 us | }
|
1470
|
+
7238524.269463 | 0) 0.073 us | idle_cpu();
|
1471
|
+
7238524.269464 | 0) 0.088 us | rcu_irq_exit();
|
1472
|
+
7238524.269464 | 0) 20.487 us | }
|
1473
|
+
7238524.269465 | 0) 56.365 us | }
|
1474
|
+
7238524.269465 | 0) 58.028 us | }
|
1475
|
+
7238524.269466 | 0) 127463.5 us | }
|
1476
|
+
7238524.269466 | 0) 127464.2 us | }
|
1477
|
+
7238524.269467 | 0) 127465.0 us | }
|
1478
|
+
7238524.269467 | 0) 0.095 us | down_read();
|
1479
|
+
7238524.269468 | 0) | copy_from_read_buf() {
|
1480
|
+
7238524.269469 | 0) | tty_audit_add_data() {
|
1481
|
+
7238524.269469 | 0) 0.228 us | _raw_spin_lock_irqsave();
|
1482
|
+
7238524.269470 | 0) 0.070 us | _raw_spin_unlock_irqrestore();
|
1483
|
+
7238524.269471 | 0) 0.074 us | _raw_spin_lock_irqsave();
|
1484
|
+
7238524.269471 | 0) 0.079 us | _raw_spin_unlock_irqrestore();
|
1485
|
+
7238524.269472 | 0) 2.616 us | }
|
1486
|
+
7238524.269472 | 0) 3.878 us | }
|
1487
|
+
7238524.269473 | 0) 0.104 us | copy_from_read_buf();
|
1488
|
+
7238524.269473 | 0) 0.074 us | n_tty_set_room();
|
1489
|
+
7238524.269474 | 0) 0.067 us | n_tty_write_wakeup();
|
1490
|
+
7238524.269474 | 0) | __wake_up() {
|
1491
|
+
7238524.269475 | 0) 0.077 us | _raw_spin_lock_irqsave();
|
1492
|
+
7238524.269475 | 0) | __wake_up_common() {
|
1493
|
+
7238524.269476 | 0) 0.095 us | pollwake();
|
1494
|
+
7238524.269476 | 0) 0.694 us | }
|
1495
|
+
7238524.269476 | 0) 0.064 us | _raw_spin_unlock_irqrestore();
|
1496
|
+
7238524.269477 | 0) 2.128 us | }
|
1497
|
+
7238524.269477 | 0) 0.062 us | n_tty_set_room();
|
1498
|
+
7238524.269477 | 0) 0.066 us | up_read();
|
1499
|
+
7238524.269478 | 0) | remove_wait_queue() {
|
1500
|
+
7238524.269478 | 0) 0.080 us | _raw_spin_lock_irqsave();
|
1501
|
+
7238524.269479 | 0) 0.081 us | _raw_spin_unlock_irqrestore();
|
1502
|
+
7238524.269480 | 0) 1.225 us | }
|
1503
|
+
7238524.269480 | 0) 0.152 us | mutex_unlock();
|
1504
|
+
7238524.269480 | 0) 127485.3 us | }
|
1505
|
+
7238524.269481 | 0) | tty_ldisc_deref() {
|
1506
|
+
7238524.269481 | 0) 0.081 us | ldsem_up_read();
|
1507
|
+
7238524.269482 | 0) 0.655 us | }
|
1508
|
+
7238524.269482 | 0) 0.089 us | get_seconds();
|
1509
|
+
7238524.269483 | 0) 127490.1 us | }
|
1510
|
+
7238524.269484 | 0) 0.287 us | __fsnotify_parent();
|
1511
|
+
7238524.269484 | 0) 0.183 us | fsnotify();
|
1512
|
+
7238524.269485 | 0) 127496.2 us | }
|
1513
|
+
7238524.269559 | 0) | vfs_read() {
|
1514
|
+
7238524.269559 | 0) | rw_verify_area() {
|
1515
|
+
7238524.269560 | 0) | security_file_permission() {
|
1516
|
+
7238524.269560 | 0) | apparmor_file_permission() {
|
1517
|
+
7238524.269561 | 0) 0.164 us | common_file_perm();
|
1518
|
+
7238524.269561 | 0) 0.831 us | }
|
1519
|
+
7238524.269562 | 0) 0.078 us | __fsnotify_parent();
|
1520
|
+
7238524.269562 | 0) 0.080 us | fsnotify();
|
1521
|
+
7238524.269563 | 0) 2.765 us | }
|
1522
|
+
7238524.269563 | 0) 3.490 us | }
|
1523
|
+
7238524.269564 | 0) | tty_read() {
|
1524
|
+
7238524.269564 | 0) 0.066 us | tty_paranoia_check();
|
1525
|
+
7238524.269564 | 0) | tty_ldisc_ref_wait() {
|
1526
|
+
7238524.269565 | 0) 0.085 us | ldsem_down_read();
|
1527
|
+
7238524.269565 | 0) 0.656 us | }
|
1528
|
+
7238524.269566 | 0) | n_tty_read() {
|
1529
|
+
7238524.269566 | 0) 0.078 us | _raw_spin_lock_irq();
|
1530
|
+
7238524.269567 | 0) 0.118 us | mutex_lock_interruptible();
|
1531
|
+
7238524.269567 | 0) 0.078 us | down_read();
|
1532
|
+
7238524.269568 | 0) | add_wait_queue() {
|
1533
|
+
7238524.269568 | 0) 0.089 us | _raw_spin_lock_irqsave();
|
1534
|
+
7238524.269569 | 0) 0.082 us | _raw_spin_unlock_irqrestore();
|
1535
|
+
7238524.269569 | 0) 1.164 us | }
|
1536
|
+
7238524.269570 | 0) 0.073 us | tty_hung_up_p();
|
1537
|
+
7238524.269570 | 0) 0.076 us | n_tty_set_room();
|
1538
|
+
7238524.269571 | 0) 0.078 us | up_read();
|
1539
|
+
7238524.269571 | 0) | schedule_timeout() {
|
1540
|
+
7238524.269572 | 0) | schedule() {
|
1541
|
+
7238524.269572 | 0) | __schedule() {
|
1542
|
+
7238524.269572 | 0) 0.078 us | rcu_note_context_switch();
|
1543
|
+
7238524.269573 | 0) 0.085 us | _raw_spin_lock_irq();
|
1544
|
+
7238524.269574 | 0) | deactivate_task() {
|
1545
|
+
7238524.269574 | 0) | dequeue_task() {
|
1546
|
+
7238524.269574 | 0) 0.185 us | update_rq_clock();
|
1547
|
+
7238524.269575 | 0) | dequeue_task_fair() {
|
1548
|
+
7238524.269575 | 0) | dequeue_entity() {
|
1549
|
+
7238524.269575 | 0) | update_curr() {
|
1550
|
+
7238524.269576 | 0) 0.206 us | cpuacct_charge();
|
1551
|
+
7238524.269577 | 0) 0.937 us | }
|
1552
|
+
7238524.269577 | 0) 0.084 us | __update_entity_load_avg_contrib();
|
1553
|
+
7238524.269577 | 0) 0.077 us | update_cfs_rq_blocked_load();
|
1554
|
+
7238524.269578 | 0) 0.075 us | clear_buddies();
|
1555
|
+
7238524.269579 | 0) 0.096 us | account_entity_dequeue();
|
1556
|
+
7238524.269579 | 0) | update_cfs_shares() {
|
1557
|
+
7238524.269580 | 0) 0.095 us | update_curr();
|
1558
|
+
7238524.269580 | 0) 0.104 us | account_entity_dequeue();
|
1559
|
+
7238524.269581 | 0) 0.076 us | account_entity_enqueue();
|
1560
|
+
7238524.269581 | 0) 1.898 us | }
|
1561
|
+
7238524.269582 | 0) 6.120 us | }
|
1562
|
+
7238524.269582 | 0) | dequeue_entity() {
|
1563
|
+
7238524.269582 | 0) 0.093 us | update_curr();
|
1564
|
+
7238524.269583 | 0) 0.116 us | __update_entity_load_avg_contrib();
|
1565
|
+
7238524.269583 | 0) 0.085 us | update_cfs_rq_blocked_load();
|
1566
|
+
7238524.269584 | 0) 0.067 us | clear_buddies();
|
1567
|
+
7238524.269585 | 0) 0.082 us | account_entity_dequeue();
|
1568
|
+
7238524.269585 | 0) 0.097 us | update_cfs_shares();
|
1569
|
+
7238524.269586 | 0) 3.833 us | }
|
1570
|
+
7238524.269586 | 0) 0.070 us | hrtick_update();
|
1571
|
+
7238524.269587 | 0) 11.677 us | }
|
1572
|
+
7238524.269587 | 0) 13.001 us | }
|
1573
|
+
7238524.269587 | 0) 13.516 us | }
|
1574
|
+
7238524.269588 | 0) | pick_next_task_fair() {
|
1575
|
+
7238524.269588 | 0) 0.072 us | check_cfs_rq_runtime();
|
1576
|
+
7238524.269588 | 0) | pick_next_entity() {
|
1577
|
+
7238524.269589 | 0) 0.080 us | clear_buddies();
|
1578
|
+
7238524.269589 | 0) 0.675 us | }
|
1579
|
+
7238524.269590 | 0) | put_prev_entity() {
|
1580
|
+
7238524.269590 | 0) 0.071 us | check_cfs_rq_runtime();
|
1581
|
+
7238524.269591 | 0) 0.543 us | }
|
1582
|
+
7238524.269591 | 0) | put_prev_entity() {
|
1583
|
+
7238524.269591 | 0) 0.066 us | check_cfs_rq_runtime();
|
1584
|
+
7238524.269592 | 0) 0.658 us | }
|
1585
|
+
7238524.269592 | 0) | set_next_entity() {
|
1586
|
+
7238524.269593 | 0) 0.082 us | update_stats_wait_end();
|
1587
|
+
7238524.269593 | 0) 0.844 us | }
|
1588
|
+
7238524.269594 | 0) 5.970 us | }
|
1589
|
+
7238524.269594 | 0) 0.076 us | paravirt_start_context_switch();
|
1590
|
+
7238524.269595 | 0) 0.074 us | xen_read_cr0();
|
1591
|
+
7238524.269596 | 0) | xen_write_cr0() {
|
1592
|
+
7238524.269597 | 0) 0.081 us | paravirt_get_lazy_mode();
|
1593
|
+
7238524.269597 | 0) 0.086 us | __xen_mc_entry();
|
1594
|
+
7238524.269598 | 0) 0.070 us | paravirt_get_lazy_mode();
|
1595
|
+
7238524.269598 | 0) 1.739 us | }
|
1596
|
+
7238524.269598 | 0) | xen_load_sp0() {
|
1597
|
+
7238524.269599 | 0) 0.078 us | paravirt_get_lazy_mode();
|
1598
|
+
7238524.269599 | 0) 0.078 us | __xen_mc_entry();
|
1599
|
+
7238524.269600 | 0) 0.069 us | paravirt_get_lazy_mode();
|
1600
|
+
7238524.269600 | 0) 1.568 us | }
|
1601
|
+
7238524.269601 | 0) | xen_load_tls() {
|
1602
|
+
7238524.269601 | 0) 0.068 us | paravirt_get_lazy_mode();
|
1603
|
+
7238524.269601 | 0) 0.068 us | paravirt_get_lazy_mode();
|
1604
|
+
7238524.269602 | 0) 0.078 us | load_TLS_descriptor();
|
1605
|
+
7238524.269602 | 0) 0.071 us | load_TLS_descriptor();
|
1606
|
+
7238524.269603 | 0) 0.073 us | load_TLS_descriptor();
|
1607
|
+
7238524.269603 | 0) 0.063 us | paravirt_get_lazy_mode();
|
1608
|
+
7238524.269604 | 0) 3.025 us | }
|
1609
|
+
7238524.269604 | 0) | xen_end_context_switch() {
|
1610
|
+
7238524.269604 | 0) 0.646 us | xen_mc_flush();
|
1611
|
+
7238524.269605 | 0) 0.087 us | paravirt_end_context_switch();
|
1612
|
+
7238524.269606 | 0) 1.604 us | }
|
1613
|
+
^C
|
1614
|
+
Ending tracing...
|
1615
|
+
|
1616
|
+
If you read through the durations carefully, you can see that the shell begins
|
1617
|
+
by completing a 19 second read (time between commands), then has a series of
|
1618
|
+
100 to 200 ms reads (inter-keystroke latency).
|
1619
|
+
|
1620
|
+
The function times printed are inclusive of their children.
|
1621
|
+
|
1622
|
+
|
1623
|
+
The -C option will print on-CPU times only, excluding sleeping or blocking
|
1624
|
+
events from the function duration times. Eg:
|
1625
|
+
|
1626
|
+
# ./funcgraph -Ctp 25285 vfs_read
|
1627
|
+
Tracing "vfs_read" for PID 25285... Ctrl-C to end.
|
1628
|
+
7338520.591816 | 0) | finish_task_switch() {
|
1629
|
+
7338520.591820 | 0) | xen_evtchn_do_upcall() {
|
1630
|
+
7338520.591821 | 0) | irq_enter() {
|
1631
|
+
7338520.591821 | 0) 0.134 us | rcu_irq_enter();
|
1632
|
+
7338520.591822 | 0) 0.823 us | }
|
1633
|
+
7338520.591822 | 0) 0.055 us | exit_idle();
|
1634
|
+
7338520.591822 | 0) | __xen_evtchn_do_upcall() {
|
1635
|
+
7338520.591823 | 0) | evtchn_2l_handle_events() {
|
1636
|
+
7338520.591823 | 0) 0.051 us | irq_from_virq();
|
1637
|
+
7338520.591823 | 0) | evtchn_from_irq() {
|
1638
|
+
7338520.591823 | 0) | irq_get_irq_data() {
|
1639
|
+
7338520.591824 | 0) 0.064 us | irq_to_desc();
|
1640
|
+
7338520.591824 | 0) 0.572 us | }
|
1641
|
+
7338520.591824 | 0) 0.973 us | }
|
1642
|
+
7338520.591825 | 0) | get_evtchn_to_irq() {
|
1643
|
+
7338520.591825 | 0) 0.049 us | evtchn_2l_max_channels();
|
1644
|
+
7338520.591825 | 0) 0.386 us | }
|
1645
|
+
7338520.591825 | 0) | generic_handle_irq() {
|
1646
|
+
7338520.591825 | 0) 0.061 us | irq_to_desc();
|
1647
|
+
7338520.591826 | 0) | handle_percpu_irq() {
|
1648
|
+
7338520.591826 | 0) | ack_dynirq() {
|
1649
|
+
7338520.591826 | 0) | evtchn_from_irq() {
|
1650
|
+
7338520.591826 | 0) | irq_get_irq_data() {
|
1651
|
+
7338520.591827 | 0) 0.050 us | irq_to_desc();
|
1652
|
+
7338520.591827 | 0) 0.441 us | }
|
1653
|
+
7338520.591827 | 0) 0.748 us | }
|
1654
|
+
7338520.591827 | 0) 0.048 us | irq_move_irq();
|
1655
|
+
7338520.591828 | 0) 0.053 us | evtchn_2l_clear_pending();
|
1656
|
+
7338520.591828 | 0) 1.810 us | }
|
1657
|
+
7338520.591828 | 0) | handle_irq_event_percpu() {
|
1658
|
+
7338520.591828 | 0) | xen_irq_work_interrupt() {
|
1659
|
+
7338520.591829 | 0) | irq_enter() {
|
1660
|
+
7338520.591829 | 0) 0.069 us | rcu_irq_enter();
|
1661
|
+
7338520.591829 | 0) 0.386 us | }
|
1662
|
+
7338520.591830 | 0) | __wake_up() {
|
1663
|
+
7338520.591830 | 0) 0.060 us | _raw_spin_lock_irqsave();
|
1664
|
+
7338520.591830 | 0) | __wake_up_common() {
|
1665
|
+
7338520.591830 | 0) | autoremove_wake_function() {
|
1666
|
+
7338520.591831 | 0) | default_wake_function() {
|
1667
|
+
7338520.591831 | 0) | try_to_wake_up() {
|
1668
|
+
7338520.591831 | 0) 0.223 us | _raw_spin_lock_irqsave();
|
1669
|
+
7338520.591832 | 0) 0.243 us | task_waking_fair();
|
1670
|
+
7338520.591832 | 0) | select_task_rq_fair() {
|
1671
|
+
7338520.591833 | 0) 0.063 us | source_load();
|
1672
|
+
7338520.591833 | 0) 0.059 us | target_load();
|
1673
|
+
7338520.591834 | 0) 0.060 us | idle_cpu();
|
1674
|
+
7338520.591834 | 0) 0.059 us | cpus_share_cache();
|
1675
|
+
7338520.591834 | 0) 0.085 us | idle_cpu();
|
1676
|
+
7338520.591835 | 0) 2.176 us | }
|
1677
|
+
7338520.591835 | 0) 0.050 us | _raw_spin_lock();
|
1678
|
+
7338520.591835 | 0) | ttwu_do_activate.constprop.124() {
|
1679
|
+
7338520.591835 | 0) | activate_task() {
|
1680
|
+
7338520.591836 | 0) | enqueue_task() {
|
1681
|
+
7338520.591836 | 0) 0.197 us | update_rq_clock();
|
1682
|
+
7338520.591836 | 0) | enqueue_task_fair() {
|
1683
|
+
7338520.591836 | 0) | enqueue_entity() {
|
1684
|
+
7338520.591837 | 0) 0.118 us | update_curr();
|
1685
|
+
7338520.591837 | 0) 0.060 us | __compute_runnable_contrib.part.51();
|
1686
|
+
7338520.591838 | 0) 0.052 us | __update_entity_load_avg_contrib();
|
1687
|
+
7338520.591838 | 0) 0.132 us | update_cfs_rq_blocked_load();
|
1688
|
+
7338520.591838 | 0) 0.068 us | account_entity_enqueue();
|
1689
|
+
7338520.591839 | 0) 0.327 us | update_cfs_shares();
|
1690
|
+
7338520.591839 | 0) 0.055 us | place_entity();
|
1691
|
+
7338520.591840 | 0) 0.086 us | __enqueue_entity();
|
1692
|
+
7338520.591840 | 0) 0.069 us | update_cfs_rq_blocked_load();
|
1693
|
+
7338520.591840 | 0) 3.870 us | }
|
1694
|
+
7338520.591841 | 0) | enqueue_entity() {
|
1695
|
+
7338520.591841 | 0) 0.050 us | update_curr();
|
1696
|
+
7338520.591841 | 0) 0.048 us | __compute_runnable_contrib.part.51();
|
1697
|
+
7338520.591842 | 0) 0.079 us | __update_entity_load_avg_contrib();
|
1698
|
+
7338520.591842 | 0) 0.068 us | update_cfs_rq_blocked_load();
|
1699
|
+
7338520.591842 | 0) 0.072 us | account_entity_enqueue();
|
1700
|
+
7338520.591843 | 0) 0.068 us | update_cfs_shares();
|
1701
|
+
7338520.591844 | 0) 0.123 us | place_entity();
|
1702
|
+
7338520.591844 | 0) 0.051 us | __enqueue_entity();
|
1703
|
+
7338520.591845 | 0) 3.919 us | }
|
1704
|
+
7338520.591845 | 0) 0.059 us | hrtick_update();
|
1705
|
+
7338520.591845 | 0) 8.895 us | }
|
1706
|
+
7338520.591846 | 0) 9.770 us | }
|
1707
|
+
7338520.591846 | 0) 10.197 us | }
|
1708
|
+
7338520.591846 | 0) | ttwu_do_wakeup() {
|
1709
|
+
7338520.591846 | 0) | check_preempt_curr() {
|
1710
|
+
7338520.591846 | 0) | resched_task() {
|
1711
|
+
7338520.591847 | 0) | xen_smp_send_reschedule() {
|
1712
|
+
7338520.591847 | 0) | xen_send_IPI_one() {
|
1713
|
+
7338520.591847 | 0) | notify_remote_via_irq() {
|
1714
|
+
7338520.591847 | 0) | evtchn_from_irq() {
|
1715
|
+
7338520.591848 | 0) | irq_get_irq_data() {
|
1716
|
+
7338520.591848 | 0) 0.051 us | irq_to_desc();
|
1717
|
+
7338520.591848 | 0) 0.503 us | }
|
1718
|
+
7338520.591848 | 0) 1.031 us | }
|
1719
|
+
7338520.591849 | 0) 2.112 us | }
|
1720
|
+
7338520.591849 | 0) 2.484 us | }
|
1721
|
+
7338520.591850 | 0) 2.851 us | }
|
1722
|
+
7338520.591850 | 0) 3.311 us | }
|
1723
|
+
7338520.591850 | 0) 3.828 us | }
|
1724
|
+
7338520.591851 | 0) 4.788 us | }
|
1725
|
+
7338520.591851 | 0) 15.731 us | }
|
1726
|
+
7338520.591851 | 0) 0.074 us | _raw_spin_unlock();
|
1727
|
+
7338520.591852 | 0) 0.156 us | ttwu_stat();
|
1728
|
+
7338520.591852 | 0) 0.080 us | _raw_spin_unlock_irqrestore();
|
1729
|
+
7338520.591853 | 0) 21.807 us | }
|
1730
|
+
7338520.591853 | 0) 22.286 us | }
|
1731
|
+
7338520.591853 | 0) 22.738 us | }
|
1732
|
+
7338520.591854 | 0) 23.387 us | }
|
1733
|
+
7338520.591854 | 0) 0.105 us | _raw_spin_unlock_irqrestore();
|
1734
|
+
7338520.591854 | 0) 24.698 us | }
|
1735
|
+
7338520.591855 | 0) | irq_exit() {
|
1736
|
+
7338520.591855 | 0) 0.086 us | idle_cpu();
|
1737
|
+
7338520.591856 | 0) 0.105 us | rcu_irq_exit();
|
1738
|
+
7338520.591856 | 0) 1.272 us | }
|
1739
|
+
7338520.591856 | 0) 27.818 us | }
|
1740
|
+
7338520.591857 | 0) 0.140 us | add_interrupt_randomness();
|
1741
|
+
7338520.591857 | 0) 0.084 us | note_interrupt();
|
1742
|
+
7338520.591858 | 0) 29.866 us | }
|
1743
|
+
7338520.591858 | 0) 32.390 us | }
|
1744
|
+
7338520.591859 | 0) 33.204 us | }
|
1745
|
+
7338520.591859 | 0) 36.137 us | }
|
1746
|
+
7338520.591859 | 0) 36.574 us | }
|
1747
|
+
7338520.591859 | 0) | irq_exit() {
|
1748
|
+
7338520.591860 | 0) 0.073 us | idle_cpu();
|
1749
|
+
7338520.591860 | 0) 0.076 us | rcu_irq_exit();
|
1750
|
+
7338520.591861 | 0) 1.091 us | }
|
1751
|
+
7338520.591861 | 0) 40.156 us | }
|
1752
|
+
7338520.591862 | 0) 41.874 us | }
|
1753
|
+
7338520.591862 | 0) 75.633 us | } /* __schedule */
|
1754
|
+
7338520.591862 | 0) 76.182 us | } /* schedule */
|
1755
|
+
7338520.591863 | 0) 76.965 us | } /* schedule_timeout */
|
1756
|
+
7338520.591863 | 0) 0.070 us | down_read();
|
1757
|
+
7338520.591864 | 0) | copy_from_read_buf() {
|
1758
|
+
7338520.591865 | 0) | tty_audit_add_data() {
|
1759
|
+
7338520.591865 | 0) 0.232 us | _raw_spin_lock_irqsave();
|
1760
|
+
7338520.591866 | 0) 0.079 us | _raw_spin_unlock_irqrestore();
|
1761
|
+
7338520.591867 | 0) 0.122 us | _raw_spin_lock_irqsave();
|
1762
|
+
7338520.591867 | 0) 0.066 us | _raw_spin_unlock_irqrestore();
|
1763
|
+
7338520.591868 | 0) 2.642 us | }
|
1764
|
+
7338520.591868 | 0) 3.886 us | }
|
1765
|
+
7338520.591868 | 0) 0.149 us | copy_from_read_buf();
|
1766
|
+
7338520.591869 | 0) 0.072 us | n_tty_set_room();
|
1767
|
+
7338520.591870 | 0) 0.071 us | n_tty_write_wakeup();
|
1768
|
+
7338520.591870 | 0) | __wake_up() {
|
1769
|
+
7338520.591871 | 0) 0.071 us | _raw_spin_lock_irqsave();
|
1770
|
+
7338520.591872 | 0) | __wake_up_common() {
|
1771
|
+
7338520.591872 | 0) 0.097 us | pollwake();
|
1772
|
+
7338520.591873 | 0) 0.739 us | }
|
1773
|
+
7338520.591873 | 0) 0.066 us | _raw_spin_unlock_irqrestore();
|
1774
|
+
7338520.591874 | 0) 3.043 us | }
|
1775
|
+
7338520.591874 | 0) 0.075 us | n_tty_set_room();
|
1776
|
+
7338520.591875 | 0) 0.106 us | up_read();
|
1777
|
+
7338520.591875 | 0) | remove_wait_queue() {
|
1778
|
+
7338520.591875 | 0) 0.078 us | _raw_spin_lock_irqsave();
|
1779
|
+
7338520.591876 | 0) 0.075 us | _raw_spin_unlock_irqrestore();
|
1780
|
+
7338520.591877 | 0) 1.165 us | }
|
1781
|
+
7338520.591877 | 0) 0.137 us | mutex_unlock();
|
1782
|
+
7338520.591877 | 0) 98.321 us | } /* n_tty_read */
|
1783
|
+
7338520.591878 | 0) | tty_ldisc_deref() {
|
1784
|
+
7338520.591878 | 0) 0.072 us | ldsem_up_read();
|
1785
|
+
7338520.591879 | 0) 0.561 us | }
|
1786
|
+
7338520.591879 | 0) 0.090 us | get_seconds();
|
1787
|
+
7338520.591880 | 0) 102.599 us | } /* tty_read */
|
1788
|
+
7338520.591880 | 0) 0.362 us | __fsnotify_parent();
|
1789
|
+
7338520.591881 | 0) 0.171 us | fsnotify();
|
1790
|
+
7338520.591882 | 0) 109.640 us | } /* vfs_read */
|
1791
|
+
7338520.591951 | 0) | vfs_read() {
|
1792
|
+
7338520.591951 | 0) | rw_verify_area() {
|
1793
|
+
7338520.591952 | 0) | security_file_permission() {
|
1794
|
+
7338520.591952 | 0) | apparmor_file_permission() {
|
1795
|
+
7338520.591952 | 0) 0.174 us | common_file_perm();
|
1796
|
+
7338520.591953 | 0) 0.762 us | }
|
1797
|
+
7338520.591953 | 0) 0.126 us | __fsnotify_parent();
|
1798
|
+
7338520.591954 | 0) 0.088 us | fsnotify();
|
1799
|
+
7338520.591954 | 0) 2.609 us | }
|
1800
|
+
7338520.591955 | 0) 3.351 us | }
|
1801
|
+
7338520.591955 | 0) | tty_read() {
|
1802
|
+
7338520.591956 | 0) 0.081 us | tty_paranoia_check();
|
1803
|
+
7338520.591956 | 0) | tty_ldisc_ref_wait() {
|
1804
|
+
7338520.591956 | 0) 0.090 us | ldsem_down_read();
|
1805
|
+
7338520.591957 | 0) 0.633 us | }
|
1806
|
+
7338520.591957 | 0) | n_tty_read() {
|
1807
|
+
7338520.591958 | 0) 0.073 us | _raw_spin_lock_irq();
|
1808
|
+
7338520.591958 | 0) 0.089 us | mutex_lock_interruptible();
|
1809
|
+
7338520.591959 | 0) 0.080 us | down_read();
|
1810
|
+
7338520.591960 | 0) | add_wait_queue() {
|
1811
|
+
7338520.591960 | 0) 0.084 us | _raw_spin_lock_irqsave();
|
1812
|
+
7338520.591960 | 0) 0.087 us | _raw_spin_unlock_irqrestore();
|
1813
|
+
7338520.591961 | 0) 1.215 us | }
|
1814
|
+
7338520.591961 | 0) 0.078 us | tty_hung_up_p();
|
1815
|
+
7338520.591962 | 0) 0.084 us | n_tty_set_room();
|
1816
|
+
7338520.591962 | 0) 0.072 us | up_read();
|
1817
|
+
7338520.591963 | 0) | schedule_timeout() {
|
1818
|
+
7338520.591963 | 0) | schedule() {
|
1819
|
+
7338520.591964 | 0) | __schedule() {
|
1820
|
+
7338520.591964 | 0) 0.084 us | rcu_note_context_switch();
|
1821
|
+
7338520.591965 | 0) 0.086 us | _raw_spin_lock_irq();
|
1822
|
+
7338520.591965 | 0) | deactivate_task() {
|
1823
|
+
7338520.591966 | 0) | dequeue_task() {
|
1824
|
+
7338520.591966 | 0) 0.171 us | update_rq_clock();
|
1825
|
+
7338520.591966 | 0) | dequeue_task_fair() {
|
1826
|
+
7338520.591967 | 0) | dequeue_entity() {
|
1827
|
+
7338520.591967 | 0) | update_curr() {
|
1828
|
+
7338520.591967 | 0) 0.248 us | cpuacct_charge();
|
1829
|
+
7338520.591968 | 0) 0.974 us | }
|
1830
|
+
7338520.591969 | 0) 0.074 us | update_cfs_rq_blocked_load();
|
1831
|
+
7338520.591969 | 0) 0.081 us | clear_buddies();
|
1832
|
+
7338520.591970 | 0) 0.094 us | account_entity_dequeue();
|
1833
|
+
7338520.591971 | 0) | update_cfs_shares() {
|
1834
|
+
7338520.591971 | 0) 0.096 us | update_curr();
|
1835
|
+
7338520.591971 | 0) 0.093 us | account_entity_dequeue();
|
1836
|
+
7338520.591972 | 0) 0.079 us | account_entity_enqueue();
|
1837
|
+
7338520.591972 | 0) 1.743 us | }
|
1838
|
+
7338520.591972 | 0) 5.515 us | }
|
1839
|
+
7338520.591973 | 0) | dequeue_entity() {
|
1840
|
+
7338520.591973 | 0) 0.088 us | update_curr();
|
1841
|
+
7338520.591974 | 0) 0.106 us | update_cfs_rq_blocked_load();
|
1842
|
+
7338520.591975 | 0) 0.078 us | clear_buddies();
|
1843
|
+
7338520.591975 | 0) 0.088 us | account_entity_dequeue();
|
1844
|
+
7338520.591976 | 0) 0.091 us | update_cfs_shares();
|
1845
|
+
7338520.591977 | 0) 3.639 us | }
|
1846
|
+
7338520.591977 | 0) 0.078 us | hrtick_update();
|
1847
|
+
7338520.591978 | 0) 10.851 us | }
|
1848
|
+
7338520.591978 | 0) 11.992 us | }
|
1849
|
+
7338520.591978 | 0) 12.496 us | }
|
1850
|
+
7338520.591978 | 0) | pick_next_task_fair() {
|
1851
|
+
7338520.591979 | 0) 0.079 us | check_cfs_rq_runtime();
|
1852
|
+
7338520.591979 | 0) | pick_next_entity() {
|
1853
|
+
7338520.591979 | 0) 0.080 us | clear_buddies();
|
1854
|
+
7338520.591980 | 0) 0.594 us | }
|
1855
|
+
7338520.591980 | 0) | put_prev_entity() {
|
1856
|
+
7338520.591980 | 0) 0.078 us | check_cfs_rq_runtime();
|
1857
|
+
7338520.591981 | 0) 0.641 us | }
|
1858
|
+
7338520.591981 | 0) | put_prev_entity() {
|
1859
|
+
7338520.591982 | 0) 0.076 us | check_cfs_rq_runtime();
|
1860
|
+
7338520.591982 | 0) 0.610 us | }
|
1861
|
+
7338520.591982 | 0) | set_next_entity() {
|
1862
|
+
7338520.591983 | 0) 0.097 us | update_stats_wait_end();
|
1863
|
+
7338520.591983 | 0) 0.744 us | }
|
1864
|
+
7338520.591984 | 0) 5.115 us | }
|
1865
|
+
7338520.591984 | 0) 0.076 us | paravirt_start_context_switch();
|
1866
|
+
7338520.591985 | 0) 0.086 us | xen_read_cr0();
|
1867
|
+
7338520.591986 | 0) | xen_write_cr0() {
|
1868
|
+
7338520.591986 | 0) 0.078 us | paravirt_get_lazy_mode();
|
1869
|
+
7338520.591987 | 0) 0.086 us | __xen_mc_entry();
|
1870
|
+
7338520.591987 | 0) 0.078 us | paravirt_get_lazy_mode();
|
1871
|
+
7338520.591988 | 0) 1.698 us | }
|
1872
|
+
7338520.591988 | 0) | xen_load_sp0() {
|
1873
|
+
7338520.591988 | 0) 0.074 us | paravirt_get_lazy_mode();
|
1874
|
+
7338520.591989 | 0) 0.084 us | __xen_mc_entry();
|
1875
|
+
7338520.591989 | 0) 0.084 us | paravirt_get_lazy_mode();
|
1876
|
+
7338520.591990 | 0) 1.724 us | }
|
1877
|
+
7338520.591990 | 0) | xen_load_tls() {
|
1878
|
+
7338520.591991 | 0) 0.080 us | paravirt_get_lazy_mode();
|
1879
|
+
7338520.591991 | 0) 0.088 us | paravirt_get_lazy_mode();
|
1880
|
+
7338520.591992 | 0) 0.140 us | load_TLS_descriptor();
|
1881
|
+
7338520.591992 | 0) 0.079 us | load_TLS_descriptor();
|
1882
|
+
7338520.591993 | 0) 0.087 us | load_TLS_descriptor();
|
1883
|
+
7338520.591994 | 0) 0.078 us | paravirt_get_lazy_mode();
|
1884
|
+
7338520.591994 | 0) 3.666 us | }
|
1885
|
+
7338520.591995 | 0) | xen_end_context_switch() {
|
1886
|
+
7338520.591995 | 0) 0.644 us | xen_mc_flush();
|
1887
|
+
7338520.591996 | 0) 0.080 us | paravirt_end_context_switch();
|
1888
|
+
7338520.591997 | 0) 1.813 us | }
|
1889
|
+
7338520.855105 | 0) | finish_task_switch() {
|
1890
|
+
7338520.855110 | 0) | xen_evtchn_do_upcall() {
|
1891
|
+
7338520.855110 | 0) | irq_enter() {
|
1892
|
+
7338520.855110 | 0) 0.137 us | rcu_irq_enter();
|
1893
|
+
7338520.855111 | 0) 0.673 us | }
|
1894
|
+
7338520.855111 | 0) 0.063 us | exit_idle();
|
1895
|
+
7338520.855111 | 0) | __xen_evtchn_do_upcall() {
|
1896
|
+
7338520.855112 | 0) | evtchn_2l_handle_events() {
|
1897
|
+
7338520.855112 | 0) 0.050 us | irq_from_virq();
|
1898
|
+
7338520.855112 | 0) | evtchn_from_irq() {
|
1899
|
+
7338520.855112 | 0) | irq_get_irq_data() {
|
1900
|
+
7338520.855113 | 0) 0.050 us | irq_to_desc();
|
1901
|
+
7338520.855113 | 0) 0.568 us | }
|
1902
|
+
7338520.855113 | 0) 0.895 us | }
|
1903
|
+
7338520.855114 | 0) | get_evtchn_to_irq() {
|
1904
|
+
7338520.855114 | 0) 0.048 us | evtchn_2l_max_channels();
|
1905
|
+
7338520.855114 | 0) 0.386 us | }
|
1906
|
+
7338520.855114 | 0) | generic_handle_irq() {
|
1907
|
+
7338520.855114 | 0) 0.051 us | irq_to_desc();
|
1908
|
+
7338520.855115 | 0) | handle_percpu_irq() {
|
1909
|
+
7338520.855115 | 0) | ack_dynirq() {
|
1910
|
+
7338520.855115 | 0) | evtchn_from_irq() {
|
1911
|
+
7338520.855115 | 0) | irq_get_irq_data() {
|
1912
|
+
7338520.855116 | 0) 0.058 us | irq_to_desc();
|
1913
|
+
7338520.855117 | 0) 1.264 us | }
|
1914
|
+
7338520.855117 | 0) 1.644 us | }
|
1915
|
+
7338520.855117 | 0) 0.048 us | irq_move_irq();
|
1916
|
+
7338520.855118 | 0) 0.050 us | evtchn_2l_clear_pending();
|
1917
|
+
7338520.855118 | 0) 2.876 us | }
|
1918
|
+
7338520.855118 | 0) | handle_irq_event_percpu() {
|
1919
|
+
7338520.855119 | 0) | xen_irq_work_interrupt() {
|
1920
|
+
7338520.855119 | 0) | irq_enter() {
|
1921
|
+
7338520.855119 | 0) 0.055 us | rcu_irq_enter();
|
1922
|
+
7338520.855119 | 0) 0.460 us | }
|
1923
|
+
7338520.855120 | 0) | __wake_up() {
|
1924
|
+
7338520.855120 | 0) 0.057 us | _raw_spin_lock_irqsave();
|
1925
|
+
7338520.855120 | 0) | __wake_up_common() {
|
1926
|
+
7338520.855121 | 0) | autoremove_wake_function() {
|
1927
|
+
7338520.855121 | 0) | default_wake_function() {
|
1928
|
+
7338520.855121 | 0) | try_to_wake_up() {
|
1929
|
+
7338520.855121 | 0) 0.203 us | _raw_spin_lock_irqsave();
|
1930
|
+
7338520.855122 | 0) 0.179 us | task_waking_fair();
|
1931
|
+
7338520.855123 | 0) | select_task_rq_fair() {
|
1932
|
+
7338520.855123 | 0) 0.048 us | source_load();
|
1933
|
+
7338520.855123 | 0) 0.059 us | target_load();
|
1934
|
+
7338520.855124 | 0) 0.059 us | idle_cpu();
|
1935
|
+
7338520.855124 | 0) 0.058 us | cpus_share_cache();
|
1936
|
+
7338520.855124 | 0) 0.058 us | idle_cpu();
|
1937
|
+
7338520.855125 | 0) 1.940 us | }
|
1938
|
+
7338520.855125 | 0) 0.057 us | _raw_spin_lock();
|
1939
|
+
7338520.855125 | 0) | ttwu_do_activate.constprop.124() {
|
1940
|
+
7338520.855125 | 0) | activate_task() {
|
1941
|
+
7338520.855126 | 0) | enqueue_task() {
|
1942
|
+
7338520.855126 | 0) 0.171 us | update_rq_clock();
|
1943
|
+
7338520.855126 | 0) | enqueue_task_fair() {
|
1944
|
+
7338520.855126 | 0) | enqueue_entity() {
|
1945
|
+
7338520.855127 | 0) 0.063 us | update_curr();
|
1946
|
+
7338520.855127 | 0) 0.078 us | __compute_runnable_contrib.part.51();
|
1947
|
+
7338520.855127 | 0) 0.066 us | __update_entity_load_avg_contrib();
|
1948
|
+
7338520.855128 | 0) 0.061 us | update_cfs_rq_blocked_load();
|
1949
|
+
7338520.855128 | 0) 0.072 us | account_entity_enqueue();
|
1950
|
+
7338520.855128 | 0) 0.116 us | update_cfs_shares();
|
1951
|
+
7338520.855129 | 0) 0.062 us | place_entity();
|
1952
|
+
7338520.855129 | 0) 0.087 us | __enqueue_entity();
|
1953
|
+
7338520.855129 | 0) 2.950 us | }
|
1954
|
+
7338520.855130 | 0) | enqueue_entity() {
|
1955
|
+
7338520.855130 | 0) 0.065 us | update_curr();
|
1956
|
+
7338520.855130 | 0) 0.065 us | update_cfs_rq_blocked_load();
|
1957
|
+
7338520.855130 | 0) 0.067 us | account_entity_enqueue();
|
1958
|
+
7338520.855131 | 0) 0.084 us | update_cfs_shares();
|
1959
|
+
7338520.855131 | 0) 0.112 us | place_entity();
|
1960
|
+
7338520.855131 | 0) 0.051 us | __enqueue_entity();
|
1961
|
+
7338520.855132 | 0) 2.074 us | }
|
1962
|
+
7338520.855132 | 0) 0.055 us | hrtick_update();
|
1963
|
+
7338520.855132 | 0) 5.983 us | }
|
1964
|
+
7338520.855133 | 0) 6.790 us | }
|
1965
|
+
7338520.855133 | 0) 7.138 us | }
|
1966
|
+
7338520.855133 | 0) | ttwu_do_wakeup() {
|
1967
|
+
7338520.855133 | 0) | check_preempt_curr() {
|
1968
|
+
7338520.855133 | 0) | resched_task() {
|
1969
|
+
7338520.855133 | 0) | xen_smp_send_reschedule() {
|
1970
|
+
7338520.855134 | 0) | xen_send_IPI_one() {
|
1971
|
+
7338520.855134 | 0) | notify_remote_via_irq() {
|
1972
|
+
7338520.855134 | 0) | evtchn_from_irq() {
|
1973
|
+
7338520.855134 | 0) | irq_get_irq_data() {
|
1974
|
+
7338520.855134 | 0) 0.057 us | irq_to_desc();
|
1975
|
+
7338520.855135 | 0) 0.502 us | }
|
1976
|
+
7338520.855135 | 0) 0.865 us | }
|
1977
|
+
7338520.855136 | 0) 1.975 us | } /* notify_remote_via_irq */
|
1978
|
+
7338520.855136 | 0) 2.350 us | }
|
1979
|
+
7338520.855136 | 0) 2.723 us | }
|
1980
|
+
7338520.855136 | 0) 3.175 us | }
|
1981
|
+
7338520.855137 | 0) 3.620 us | }
|
1982
|
+
7338520.855138 | 0) 4.642 us | }
|
1983
|
+
7338520.855138 | 0) 12.409 us | }
|
1984
|
+
7338520.855138 | 0) 0.059 us | _raw_spin_unlock();
|
1985
|
+
7338520.855139 | 0) 0.108 us | ttwu_stat();
|
1986
|
+
7338520.855140 | 0) 0.073 us | _raw_spin_unlock_irqrestore();
|
1987
|
+
7338520.855140 | 0) 18.857 us | }
|
1988
|
+
7338520.855141 | 0) 19.415 us | }
|
1989
|
+
7338520.855141 | 0) 19.993 us | }
|
1990
|
+
7338520.855141 | 0) 20.587 us | }
|
1991
|
+
7338520.855141 | 0) 0.070 us | _raw_spin_unlock_irqrestore();
|
1992
|
+
7338520.855142 | 0) 21.858 us | }
|
1993
|
+
7338520.855142 | 0) | irq_exit() {
|
1994
|
+
7338520.855143 | 0) 0.084 us | idle_cpu();
|
1995
|
+
7338520.855143 | 0) 0.082 us | rcu_irq_exit();
|
1996
|
+
7338520.855144 | 0) 1.235 us | }
|
1997
|
+
7338520.855144 | 0) 25.109 us | }
|
1998
|
+
7338520.855144 | 0) 0.126 us | add_interrupt_randomness();
|
1999
|
+
7338520.855145 | 0) 0.091 us | note_interrupt();
|
2000
|
+
7338520.855145 | 0) 26.935 us | }
|
2001
|
+
7338520.855146 | 0) 30.693 us | }
|
2002
|
+
7338520.855146 | 0) 31.575 us | }
|
2003
|
+
7338520.855146 | 0) 34.424 us | }
|
2004
|
+
7338520.855147 | 0) 34.841 us | }
|
2005
|
+
7338520.855147 | 0) | irq_exit() {
|
2006
|
+
7338520.855147 | 0) 0.083 us | idle_cpu();
|
2007
|
+
7338520.855148 | 0) 0.069 us | rcu_irq_exit();
|
2008
|
+
7338520.855148 | 0) 1.056 us | }
|
2009
|
+
7338520.855148 | 0) 38.284 us | }
|
2010
|
+
7338520.855149 | 0) 39.892 us | }
|
2011
|
+
7338520.855150 | 0) 72.181 us | }
|
2012
|
+
7338520.855150 | 0) 72.925 us | }
|
2013
|
+
7338520.855150 | 0) 73.638 us | }
|
2014
|
+
7338520.855151 | 0) 0.078 us | down_read();
|
2015
|
+
7338520.855152 | 0) | copy_from_read_buf() {
|
2016
|
+
7338520.855153 | 0) | tty_audit_add_data() {
|
2017
|
+
7338520.855153 | 0) 0.272 us | _raw_spin_lock_irqsave();
|
2018
|
+
7338520.855154 | 0) 0.063 us | _raw_spin_unlock_irqrestore();
|
2019
|
+
7338520.855155 | 0) 0.086 us | _raw_spin_lock_irqsave();
|
2020
|
+
7338520.855155 | 0) 0.067 us | _raw_spin_unlock_irqrestore();
|
2021
|
+
7338520.855156 | 0) 2.808 us | }
|
2022
|
+
7338520.855156 | 0) 4.330 us | }
|
2023
|
+
7338520.855156 | 0) 0.083 us | copy_from_read_buf();
|
2024
|
+
7338520.855157 | 0) 0.062 us | n_tty_set_room();
|
2025
|
+
7338520.855158 | 0) 0.079 us | n_tty_write_wakeup();
|
2026
|
+
7338520.855158 | 0) | __wake_up() {
|
2027
|
+
7338520.855158 | 0) 0.068 us | _raw_spin_lock_irqsave();
|
2028
|
+
7338520.855159 | 0) | __wake_up_common() {
|
2029
|
+
7338520.855159 | 0) 0.092 us | pollwake();
|
2030
|
+
7338520.855160 | 0) 0.643 us | }
|
2031
|
+
7338520.855160 | 0) 0.074 us | _raw_spin_unlock_irqrestore();
|
2032
|
+
7338520.855160 | 0) 2.040 us | }
|
2033
|
+
7338520.855161 | 0) 0.074 us | n_tty_set_room();
|
2034
|
+
7338520.855162 | 0) 0.073 us | up_read();
|
2035
|
+
7338520.855162 | 0) | remove_wait_queue() {
|
2036
|
+
7338520.855162 | 0) 0.084 us | _raw_spin_lock_irqsave();
|
2037
|
+
7338520.855163 | 0) 0.078 us | _raw_spin_unlock_irqrestore();
|
2038
|
+
7338520.855163 | 0) 1.166 us | }
|
2039
|
+
7338520.855164 | 0) 0.140 us | mutex_unlock();
|
2040
|
+
7338520.855164 | 0) 93.360 us | }
|
2041
|
+
7338520.855165 | 0) | tty_ldisc_deref() {
|
2042
|
+
7338520.855165 | 0) 0.070 us | ldsem_up_read();
|
2043
|
+
7338520.855166 | 0) 0.746 us | }
|
2044
|
+
7338520.855166 | 0) 0.071 us | get_seconds();
|
2045
|
+
7338520.855167 | 0) 97.713 us | }
|
2046
|
+
7338520.855167 | 0) 0.283 us | __fsnotify_parent();
|
2047
|
+
7338520.855168 | 0) 0.172 us | fsnotify();
|
2048
|
+
7338520.855168 | 0) 103.847 us | }
|
2049
|
+
7338520.855238 | 0) | vfs_read() {
|
2050
|
+
7338520.855239 | 0) | rw_verify_area() {
|
2051
|
+
7338520.855240 | 0) | security_file_permission() {
|
2052
|
+
7338520.855240 | 0) | apparmor_file_permission() {
|
2053
|
+
7338520.855240 | 0) 0.160 us | common_file_perm();
|
2054
|
+
7338520.855241 | 0) 0.770 us | }
|
2055
|
+
7338520.855241 | 0) 0.078 us | __fsnotify_parent();
|
2056
|
+
7338520.855242 | 0) 0.087 us | fsnotify();
|
2057
|
+
7338520.855243 | 0) 2.595 us | }
|
2058
|
+
7338520.855243 | 0) 4.148 us | }
|
2059
|
+
7338520.855243 | 0) | tty_read() {
|
2060
|
+
7338520.855244 | 0) 0.078 us | tty_paranoia_check();
|
2061
|
+
7338520.855244 | 0) | tty_ldisc_ref_wait() {
|
2062
|
+
7338520.855244 | 0) 0.084 us | ldsem_down_read();
|
2063
|
+
7338520.855245 | 0) 0.643 us | }
|
2064
|
+
7338520.855245 | 0) | n_tty_read() {
|
2065
|
+
7338520.855246 | 0) 0.079 us | _raw_spin_lock_irq();
|
2066
|
+
7338520.855247 | 0) 0.171 us | mutex_lock_interruptible();
|
2067
|
+
7338520.855247 | 0) 0.064 us | down_read();
|
2068
|
+
7338520.855248 | 0) | add_wait_queue() {
|
2069
|
+
7338520.855248 | 0) 0.078 us | _raw_spin_lock_irqsave();
|
2070
|
+
7338520.855249 | 0) 0.082 us | _raw_spin_unlock_irqrestore();
|
2071
|
+
7338520.855249 | 0) 1.076 us | }
|
2072
|
+
7338520.855250 | 0) 0.075 us | tty_hung_up_p();
|
2073
|
+
7338520.855250 | 0) 0.079 us | n_tty_set_room();
|
2074
|
+
7338520.855251 | 0) 0.075 us | up_read();
|
2075
|
+
7338520.855251 | 0) | schedule_timeout() {
|
2076
|
+
7338520.855252 | 0) | schedule() {
|
2077
|
+
7338520.855252 | 0) | __schedule() {
|
2078
|
+
7338520.855252 | 0) 0.084 us | rcu_note_context_switch();
|
2079
|
+
7338520.855253 | 0) 0.079 us | _raw_spin_lock_irq();
|
2080
|
+
7338520.855254 | 0) | deactivate_task() {
|
2081
|
+
7338520.855254 | 0) | dequeue_task() {
|
2082
|
+
7338520.855254 | 0) 0.219 us | update_rq_clock();
|
2083
|
+
7338520.855255 | 0) | dequeue_task_fair() {
|
2084
|
+
7338520.855255 | 0) | dequeue_entity() {
|
2085
|
+
7338520.855255 | 0) | update_curr() {
|
2086
|
+
7338520.855256 | 0) 0.186 us | cpuacct_charge();
|
2087
|
+
7338520.855257 | 0) 0.924 us | }
|
2088
|
+
7338520.855257 | 0) 0.078 us | update_cfs_rq_blocked_load();
|
2089
|
+
7338520.855258 | 0) 0.078 us | clear_buddies();
|
2090
|
+
7338520.855258 | 0) 0.083 us | account_entity_dequeue();
|
2091
|
+
7338520.855259 | 0) | update_cfs_shares() {
|
2092
|
+
7338520.855259 | 0) 0.105 us | update_curr();
|
2093
|
+
7338520.855260 | 0) 0.093 us | account_entity_dequeue();
|
2094
|
+
7338520.855260 | 0) 0.098 us | account_entity_enqueue();
|
2095
|
+
7338520.855261 | 0) 1.825 us | }
|
2096
|
+
7338520.855261 | 0) 5.574 us | }
|
2097
|
+
7338520.855261 | 0) | dequeue_entity() {
|
2098
|
+
7338520.855261 | 0) 0.086 us | update_curr();
|
2099
|
+
7338520.855262 | 0) 0.127 us | __update_entity_load_avg_contrib();
|
2100
|
+
7338520.855263 | 0) 0.070 us | update_cfs_rq_blocked_load();
|
2101
|
+
7338520.855263 | 0) 0.066 us | clear_buddies();
|
2102
|
+
7338520.855264 | 0) 0.082 us | account_entity_dequeue();
|
2103
|
+
7338520.855264 | 0) 0.104 us | update_cfs_shares();
|
2104
|
+
7338520.855265 | 0) 3.439 us | }
|
2105
|
+
7338520.855265 | 0) 0.078 us | hrtick_update();
|
2106
|
+
7338520.855266 | 0) 10.741 us | }
|
2107
|
+
7338520.855266 | 0) 11.990 us | }
|
2108
|
+
7338520.855266 | 0) 12.580 us | }
|
2109
|
+
7338520.855267 | 0) | pick_next_task_fair() {
|
2110
|
+
7338520.855267 | 0) 0.074 us | check_cfs_rq_runtime();
|
2111
|
+
7338520.855268 | 0) | pick_next_entity() {
|
2112
|
+
7338520.855268 | 0) 0.078 us | clear_buddies();
|
2113
|
+
7338520.855269 | 0) 0.696 us | }
|
2114
|
+
7338520.855269 | 0) | put_prev_entity() {
|
2115
|
+
7338520.855269 | 0) 0.084 us | check_cfs_rq_runtime();
|
2116
|
+
7338520.855270 | 0) 0.628 us | }
|
2117
|
+
7338520.855270 | 0) | put_prev_entity() {
|
2118
|
+
7338520.855270 | 0) 0.074 us | check_cfs_rq_runtime();
|
2119
|
+
7338520.855271 | 0) 0.575 us | }
|
2120
|
+
7338520.855271 | 0) | set_next_entity() {
|
2121
|
+
7338520.855272 | 0) 0.104 us | update_stats_wait_end();
|
2122
|
+
7338520.855273 | 0) 0.834 us | }
|
2123
|
+
7338520.855273 | 0) 5.872 us | }
|
2124
|
+
7338520.855274 | 0) 0.079 us | paravirt_start_context_switch();
|
2125
|
+
7338520.855275 | 0) 0.080 us | xen_read_cr0();
|
2126
|
+
7338520.855276 | 0) | xen_write_cr0() {
|
2127
|
+
7338520.855276 | 0) 0.091 us | paravirt_get_lazy_mode();
|
2128
|
+
7338520.855277 | 0) 0.087 us | __xen_mc_entry();
|
2129
|
+
7338520.855277 | 0) 0.076 us | paravirt_get_lazy_mode();
|
2130
|
+
7338520.855278 | 0) 1.986 us | }
|
2131
|
+
7338520.855278 | 0) | xen_load_sp0() {
|
2132
|
+
7338520.855278 | 0) 0.066 us | paravirt_get_lazy_mode();
|
2133
|
+
7338520.855279 | 0) 0.083 us | __xen_mc_entry();
|
2134
|
+
7338520.855280 | 0) 0.082 us | paravirt_get_lazy_mode();
|
2135
|
+
7338520.855280 | 0) 1.925 us | }
|
2136
|
+
7338520.855281 | 0) | xen_load_tls() {
|
2137
|
+
7338520.855281 | 0) 0.082 us | paravirt_get_lazy_mode();
|
2138
|
+
7338520.855281 | 0) 0.080 us | paravirt_get_lazy_mode();
|
2139
|
+
7338520.855282 | 0) 0.137 us | load_TLS_descriptor();
|
2140
|
+
7338520.855283 | 0) 0.090 us | load_TLS_descriptor();
|
2141
|
+
7338520.855283 | 0) 0.081 us | load_TLS_descriptor();
|
2142
|
+
7338520.855284 | 0) 0.081 us | paravirt_get_lazy_mode();
|
2143
|
+
7338520.855284 | 0) 3.397 us | }
|
2144
|
+
7338520.855284 | 0) | xen_end_context_switch() {
|
2145
|
+
7338520.855285 | 0) 0.618 us | xen_mc_flush();
|
2146
|
+
7338520.855286 | 0) 0.086 us | paravirt_end_context_switch();
|
2147
|
+
7338520.855286 | 0) 1.708 us | }
|
2148
|
+
^C
|
2149
|
+
Ending tracing...
|
2150
|
+
|
2151
|
+
Understanding whether the time is on-CPU or blocked off-CPU directs the
|
2152
|
+
performance investigation.
|
2153
|
+
|
2154
|
+
|
2155
|
+
Use -h to print the USAGE message:
|
2156
|
+
|
2157
|
+
# ./funcgraph -h
|
2158
|
+
USAGE: funcgraph [-aCDhHPtT] [-m maxdepth] [-p PID] [-L TID] [-d secs] funcstring
|
2159
|
+
-a # all info (same as -HPt)
|
2160
|
+
-C # measure on-CPU time only
|
2161
|
+
-d seconds # trace duration, and use buffers
|
2162
|
+
-D # do not show function duration
|
2163
|
+
-h # this usage message
|
2164
|
+
-H # include column headers
|
2165
|
+
-m maxdepth # max stack depth to show
|
2166
|
+
-p PID # trace when this pid is on-CPU
|
2167
|
+
-L TID # trace when this thread is on-CPU
|
2168
|
+
-P # show process names & PIDs
|
2169
|
+
-t # show timestamps
|
2170
|
+
-T # comment function tails
|
2171
|
+
eg,
|
2172
|
+
funcgraph do_nanosleep # trace do_nanosleep() and children
|
2173
|
+
funcgraph -m 3 do_sys_open # trace do_sys_open() to 3 levels only
|
2174
|
+
funcgraph -a do_sys_open # include timestamps and process name
|
2175
|
+
funcgraph -p 198 do_sys_open # trace vfs_read() for PID 198 only
|
2176
|
+
funcgraph -d 1 do_sys_open >out # trace 1 sec, then write to file
|
2177
|
+
|
2178
|
+
See the man page and example file for more info.
|