mirror of
https://github.com/brendangregg/perf-tools.git
synced 2025-12-01 07:26:04 +07:00
1536 lines
110 KiB
Plaintext
1536 lines
110 KiB
Plaintext
|
|
Demonstrations of funcgraph, the Linux ftrace version.
|
||
|
|
|
||
|
|
I'll start by showing do_nanosleep(), since it's usually a low frequency
|
||
|
|
function that can be easily triggered (run "vmstat 1"):
|
||
|
|
|
||
|
|
# ./funcgraph do_nanosleep
|
||
|
|
Tracing "do_nanosleep"... Ctrl-C to end.
|
||
|
|
0) | do_nanosleep() {
|
||
|
|
0) | hrtimer_start_range_ns() {
|
||
|
|
0) | __hrtimer_start_range_ns() {
|
||
|
|
0) | lock_hrtimer_base.isra.24() {
|
||
|
|
0) 0.198 us | _raw_spin_lock_irqsave();
|
||
|
|
0) 0.908 us | }
|
||
|
|
0) 0.061 us | idle_cpu();
|
||
|
|
0) 0.117 us | ktime_get();
|
||
|
|
0) 0.371 us | enqueue_hrtimer();
|
||
|
|
0) 0.075 us | _raw_spin_unlock_irqrestore();
|
||
|
|
0) 3.447 us | }
|
||
|
|
0) 3.998 us | }
|
||
|
|
0) | schedule() {
|
||
|
|
0) | __schedule() {
|
||
|
|
0) 0.050 us | rcu_note_context_switch();
|
||
|
|
0) 0.055 us | _raw_spin_lock_irq();
|
||
|
|
0) | deactivate_task() {
|
||
|
|
0) | dequeue_task() {
|
||
|
|
0) 0.142 us | update_rq_clock();
|
||
|
|
0) | dequeue_task_fair() {
|
||
|
|
0) | dequeue_entity() {
|
||
|
|
0) | update_curr() {
|
||
|
|
0) 0.086 us | cpuacct_charge();
|
||
|
|
0) 0.757 us | }
|
||
|
|
0) 0.052 us | clear_buddies();
|
||
|
|
0) 0.103 us | update_cfs_load();
|
||
|
|
0) | update_cfs_shares() {
|
||
|
|
0) | reweight_entity() {
|
||
|
|
0) 0.077 us | update_curr();
|
||
|
|
0) 0.438 us | }
|
||
|
|
0) 0.794 us | }
|
||
|
|
0) 3.067 us | }
|
||
|
|
0) 0.064 us | set_next_buddy();
|
||
|
|
0) 0.066 us | update_cfs_load();
|
||
|
|
0) 0.085 us | update_cfs_shares();
|
||
|
|
0) | hrtick_update() {
|
||
|
|
0) 0.063 us | hrtick_start_fair();
|
||
|
|
0) 0.367 us | }
|
||
|
|
0) 5.188 us | }
|
||
|
|
0) 5.923 us | }
|
||
|
|
0) 6.228 us | }
|
||
|
|
0) | put_prev_task_fair() {
|
||
|
|
0) 0.078 us | put_prev_entity();
|
||
|
|
0) | put_prev_entity() {
|
||
|
|
0) 0.070 us | update_curr();
|
||
|
|
0) 0.074 us | __enqueue_entity();
|
||
|
|
0) 0.737 us | }
|
||
|
|
0) 1.367 us | }
|
||
|
|
0) | pick_next_task_fair() {
|
||
|
|
0) | pick_next_entity() {
|
||
|
|
0) 0.052 us | wakeup_preempt_entity.isra.95();
|
||
|
|
0) 0.070 us | clear_buddies();
|
||
|
|
0) 0.676 us | }
|
||
|
|
0) | set_next_entity() {
|
||
|
|
0) 0.052 us | update_stats_wait_end();
|
||
|
|
0) 0.435 us | }
|
||
|
|
0) | pick_next_entity() {
|
||
|
|
0) 0.065 us | clear_buddies();
|
||
|
|
0) 0.376 us | }
|
||
|
|
0) | set_next_entity() {
|
||
|
|
0) 0.067 us | update_stats_wait_end();
|
||
|
|
0) 0.374 us | }
|
||
|
|
0) 0.051 us | hrtick_start_fair();
|
||
|
|
0) 3.879 us | }
|
||
|
|
0) 0.057 us | paravirt_start_context_switch();
|
||
|
|
0) | xen_load_sp0() {
|
||
|
|
0) 0.050 us | paravirt_get_lazy_mode();
|
||
|
|
0) 0.057 us | __xen_mc_entry();
|
||
|
|
0) 0.056 us | paravirt_get_lazy_mode();
|
||
|
|
0) 1.441 us | }
|
||
|
|
0) | xen_load_tls() {
|
||
|
|
0) 0.049 us | paravirt_get_lazy_mode();
|
||
|
|
0) 0.051 us | paravirt_get_lazy_mode();
|
||
|
|
0) | load_TLS_descriptor() {
|
||
|
|
0) | arbitrary_virt_to_machine() {
|
||
|
|
0) 0.081 us | __virt_addr_valid();
|
||
|
|
0) 0.052 us | __phys_addr();
|
||
|
|
0) 0.084 us | get_phys_to_machine();
|
||
|
|
0) 1.115 us | }
|
||
|
|
0) 0.053 us | __xen_mc_entry();
|
||
|
|
0) 1.744 us | }
|
||
|
|
0) | load_TLS_descriptor() {
|
||
|
|
0) | arbitrary_virt_to_machine() {
|
||
|
|
0) 0.053 us | __virt_addr_valid();
|
||
|
|
0) 0.056 us | __phys_addr();
|
||
|
|
0) 0.057 us | get_phys_to_machine();
|
||
|
|
0) 0.990 us | }
|
||
|
|
0) 0.053 us | __xen_mc_entry();
|
||
|
|
0) 1.583 us | } /* load_TLS_descriptor */
|
||
|
|
0) | load_TLS_descriptor() {
|
||
|
|
0) | arbitrary_virt_to_machine() {
|
||
|
|
0) 0.057 us | __virt_addr_valid();
|
||
|
|
0) 0.051 us | __phys_addr();
|
||
|
|
0) 0.053 us | get_phys_to_machine();
|
||
|
|
0) 0.978 us | }
|
||
|
|
0) 0.052 us | __xen_mc_entry();
|
||
|
|
0) 1.586 us | }
|
||
|
|
0) 0.052 us | paravirt_get_lazy_mode();
|
||
|
|
0) 6.630 us | }
|
||
|
|
0) | xen_end_context_switch() {
|
||
|
|
0) 0.666 us | xen_mc_flush();
|
||
|
|
0) 0.050 us | paravirt_end_context_switch();
|
||
|
|
0) 1.286 us | }
|
||
|
|
0) 0.172 us | xen_write_msr_safe();
|
||
|
|
------------------------------------------
|
||
|
|
0) platfor-3210 => vmstat-2854
|
||
|
|
------------------------------------------
|
||
|
|
|
||
|
|
0) | do_nanosleep() {
|
||
|
|
0) | hrtimer_start_range_ns() {
|
||
|
|
0) | __hrtimer_start_range_ns() {
|
||
|
|
0) | lock_hrtimer_base.isra.24() {
|
||
|
|
0) 0.217 us | _raw_spin_lock_irqsave();
|
||
|
|
0) 0.831 us | }
|
||
|
|
0) 0.066 us | idle_cpu();
|
||
|
|
0) 0.123 us | ktime_get();
|
||
|
|
0) 1.172 us | enqueue_hrtimer();
|
||
|
|
0) 0.089 us | _raw_spin_unlock_irqrestore();
|
||
|
|
0) 4.050 us | }
|
||
|
|
0) 4.523 us | }
|
||
|
|
[...]
|
||
|
|
|
||
|
|
The default output shows the function call graph, including all child kernel
|
||
|
|
functions, along with the function duration times. These times are printed on
|
||
|
|
either the return line for the function ("}"), or for leaf functions, on the
|
||
|
|
same line.
|
||
|
|
|
||
|
|
The format of this output is documented in the function graph section of the
|
||
|
|
kernel source file Documentation/trace/ftrace.txt.
|
||
|
|
|
||
|
|
This particular example shows the workings of do_nanosleep, in the first dozen
|
||
|
|
lines, and then schedule() is called to sleep this thread and run another. The
|
||
|
|
inner workings of schedule() is included in the output.
|
||
|
|
|
||
|
|
This output is great for determining the behavior of a certain kernel function,
|
||
|
|
and to identify functions that can be studied in more details using other, lower
|
||
|
|
overhead, tools (eg, funccount(8), functrace(8), kprobe(8)). The overheads
|
||
|
|
of funcgraph are moderate, since all kernel functions are traced in case
|
||
|
|
they are executed, then included in the output if they are.
|
||
|
|
|
||
|
|
Now, if you want to start understanding the general behavior of the kernel,
|
||
|
|
without a certain kernel function in mind, you may be better to begin with
|
||
|
|
CPU stack profiling using perf and generating a flame graph. Such an approach
|
||
|
|
has low overhead, as you are in control of the frequency of event collection
|
||
|
|
(eg, gathering CPU stacks at 99 Hertz). For instructions, see:
|
||
|
|
http://www.brendangregg.com/perf.html#FlameGraphs
|
||
|
|
|
||
|
|
|
||
|
|
For this example, I trace vfs_read() calls by process ID 5363: which is a bash
|
||
|
|
shell. I also include headers (-H) and absolute timestamps (-t). While
|
||
|
|
tracing, in that bash shell, I typed the word "hello":
|
||
|
|
|
||
|
|
# ./funcgraph -Htp 5363 vfs_read
|
||
|
|
Tracing "vfs_read" for PID 5363... Ctrl-C to end.
|
||
|
|
# tracer: function_graph
|
||
|
|
#
|
||
|
|
# TIME CPU DURATION FUNCTION CALLS
|
||
|
|
# | | | | | | | |
|
||
|
|
7238523.638008 | 0) | finish_task_switch() {
|
||
|
|
7238523.638012 | 0) | xen_evtchn_do_upcall() {
|
||
|
|
7238523.638012 | 0) | irq_enter() {
|
||
|
|
7238523.638013 | 0) 0.153 us | rcu_irq_enter();
|
||
|
|
7238523.638014 | 0) 1.144 us | }
|
||
|
|
7238523.638014 | 0) 0.056 us | exit_idle();
|
||
|
|
7238523.638014 | 0) | __xen_evtchn_do_upcall() {
|
||
|
|
7238523.638015 | 0) | evtchn_2l_handle_events() {
|
||
|
|
7238523.638015 | 0) 0.057 us | irq_from_virq();
|
||
|
|
7238523.638015 | 0) | evtchn_from_irq() {
|
||
|
|
7238523.638015 | 0) | irq_get_irq_data() {
|
||
|
|
7238523.638016 | 0) 0.058 us | irq_to_desc();
|
||
|
|
7238523.638016 | 0) 0.565 us | }
|
||
|
|
7238523.638016 | 0) 0.966 us | }
|
||
|
|
7238523.638016 | 0) | get_evtchn_to_irq() {
|
||
|
|
7238523.638017 | 0) 0.050 us | evtchn_2l_max_channels();
|
||
|
|
7238523.638017 | 0) 0.386 us | }
|
||
|
|
7238523.638017 | 0) | generic_handle_irq() {
|
||
|
|
7238523.638017 | 0) 0.058 us | irq_to_desc();
|
||
|
|
7238523.638018 | 0) | handle_percpu_irq() {
|
||
|
|
7238523.638018 | 0) | ack_dynirq() {
|
||
|
|
7238523.638018 | 0) | evtchn_from_irq() {
|
||
|
|
7238523.638018 | 0) | irq_get_irq_data() {
|
||
|
|
7238523.638019 | 0) 0.049 us | irq_to_desc();
|
||
|
|
7238523.638019 | 0) 0.441 us | }
|
||
|
|
7238523.638019 | 0) 0.772 us | }
|
||
|
|
7238523.638019 | 0) 0.049 us | irq_move_irq();
|
||
|
|
7238523.638020 | 0) 0.060 us | evtchn_2l_clear_pending();
|
||
|
|
7238523.638020 | 0) 1.810 us | }
|
||
|
|
7238523.638020 | 0) | handle_irq_event_percpu() {
|
||
|
|
7238523.638020 | 0) | xen_irq_work_interrupt() {
|
||
|
|
7238523.638021 | 0) | irq_enter() {
|
||
|
|
7238523.638021 | 0) 0.056 us | rcu_irq_enter();
|
||
|
|
7238523.638021 | 0) 0.384 us | }
|
||
|
|
7238523.638021 | 0) | __wake_up() {
|
||
|
|
7238523.638022 | 0) 0.059 us | _raw_spin_lock_irqsave();
|
||
|
|
7238523.638022 | 0) | __wake_up_common() {
|
||
|
|
7238523.638022 | 0) | autoremove_wake_function() {
|
||
|
|
7238523.638023 | 0) | default_wake_function() {
|
||
|
|
7238523.638023 | 0) | try_to_wake_up() {
|
||
|
|
7238523.638023 | 0) 0.220 us | _raw_spin_lock_irqsave();
|
||
|
|
7238523.638024 | 0) 0.270 us | task_waking_fair();
|
||
|
|
7238523.638024 | 0) | select_task_rq_fair() {
|
||
|
|
7238523.638025 | 0) 0.055 us | source_load();
|
||
|
|
7238523.638025 | 0) 0.056 us | target_load();
|
||
|
|
7238523.638025 | 0) 0.060 us | idle_cpu();
|
||
|
|
7238523.638026 | 0) 0.054 us | cpus_share_cache();
|
||
|
|
7238523.638026 | 0) 0.083 us | idle_cpu();
|
||
|
|
7238523.638026 | 0) 2.060 us | }
|
||
|
|
7238523.638027 | 0) 0.051 us | _raw_spin_lock();
|
||
|
|
7238523.638027 | 0) | ttwu_do_activate.constprop.124() {
|
||
|
|
7238523.638027 | 0) | activate_task() {
|
||
|
|
7238523.638027 | 0) | enqueue_task() {
|
||
|
|
7238523.638028 | 0) 0.120 us | update_rq_clock();
|
||
|
|
7238523.638028 | 0) | enqueue_task_fair() {
|
||
|
|
7238523.638028 | 0) | enqueue_entity() {
|
||
|
|
7238523.638028 | 0) 0.147 us | update_curr();
|
||
|
|
7238523.638029 | 0) 0.055 us | __compute_runnable_contrib.part.51();
|
||
|
|
7238523.638029 | 0) 0.066 us | __update_entity_load_avg_contrib();
|
||
|
|
7238523.638029 | 0) 0.141 us | update_cfs_rq_blocked_load();
|
||
|
|
7238523.638030 | 0) 0.068 us | account_entity_enqueue();
|
||
|
|
7238523.638030 | 0) 0.351 us | update_cfs_shares();
|
||
|
|
7238523.638031 | 0) 0.053 us | place_entity();
|
||
|
|
7238523.638031 | 0) 0.082 us | __enqueue_entity();
|
||
|
|
7238523.638032 | 0) 0.050 us | update_cfs_rq_blocked_load();
|
||
|
|
7238523.638032 | 0) 3.922 us | }
|
||
|
|
7238523.638032 | 0) | enqueue_entity() {
|
||
|
|
7238523.638033 | 0) 0.058 us | update_curr();
|
||
|
|
7238523.638033 | 0) 0.056 us | __compute_runnable_contrib.part.51();
|
||
|
|
7238523.638033 | 0) 0.078 us | __update_entity_load_avg_contrib();
|
||
|
|
7238523.638034 | 0) 0.055 us | update_cfs_rq_blocked_load();
|
||
|
|
7238523.638034 | 0) 0.064 us | account_entity_enqueue();
|
||
|
|
7238523.638034 | 0) 0.059 us | update_cfs_shares();
|
||
|
|
7238523.638035 | 0) 0.050 us | place_entity();
|
||
|
|
7238523.638036 | 0) 0.057 us | __enqueue_entity();
|
||
|
|
7238523.638036 | 0) 3.829 us | }
|
||
|
|
7238523.638037 | 0) 0.057 us | hrtick_update();
|
||
|
|
7238523.638037 | 0) 8.876 us | }
|
||
|
|
7238523.638037 | 0) 9.698 us | }
|
||
|
|
7238523.638037 | 0) 10.113 us | }
|
||
|
|
7238523.638038 | 0) | ttwu_do_wakeup() {
|
||
|
|
7238523.638038 | 0) | check_preempt_curr() {
|
||
|
|
7238523.638038 | 0) | resched_task() {
|
||
|
|
7238523.638038 | 0) | xen_smp_send_reschedule() {
|
||
|
|
7238523.638038 | 0) | xen_send_IPI_one() {
|
||
|
|
7238523.638039 | 0) | notify_remote_via_irq() {
|
||
|
|
7238523.638039 | 0) | evtchn_from_irq() {
|
||
|
|
7238523.638039 | 0) | irq_get_irq_data() {
|
||
|
|
7238523.638039 | 0) 0.051 us | irq_to_desc();
|
||
|
|
7238523.638039 | 0) 0.518 us | }
|
||
|
|
7238523.638040 | 0) 0.955 us | }
|
||
|
|
7238523.638041 | 0) 2.001 us | }
|
||
|
|
7238523.638041 | 0) 2.391 us | }
|
||
|
|
7238523.638041 | 0) 2.745 us | }
|
||
|
|
7238523.638041 | 0) 3.183 us | }
|
||
|
|
7238523.638042 | 0) 3.663 us | }
|
||
|
|
7238523.638042 | 0) 4.621 us | }
|
||
|
|
7238523.638043 | 0) 15.443 us | }
|
||
|
|
7238523.638043 | 0) 0.067 us | _raw_spin_unlock();
|
||
|
|
7238523.638043 | 0) 0.167 us | ttwu_stat();
|
||
|
|
7238523.638044 | 0) 0.087 us | _raw_spin_unlock_irqrestore();
|
||
|
|
7238523.638044 | 0) 21.447 us | }
|
||
|
|
7238523.638045 | 0) 21.940 us | }
|
||
|
|
7238523.638045 | 0) 22.406 us | }
|
||
|
|
7238523.638045 | 0) 23.071 us | }
|
||
|
|
7238523.638045 | 0) 0.073 us | _raw_spin_unlock_irqrestore();
|
||
|
|
7238523.638046 | 0) 24.382 us | }
|
||
|
|
7238523.638046 | 0) | irq_exit() {
|
||
|
|
7238523.638047 | 0) 0.085 us | idle_cpu();
|
||
|
|
7238523.638047 | 0) 0.093 us | rcu_irq_exit();
|
||
|
|
7238523.638048 | 0) 1.242 us | }
|
||
|
|
7238523.638048 | 0) 27.410 us | }
|
||
|
|
7238523.638049 | 0) 0.139 us | add_interrupt_randomness();
|
||
|
|
7238523.638049 | 0) 0.089 us | note_interrupt();
|
||
|
|
7238523.638050 | 0) 29.582 us | }
|
||
|
|
7238523.638050 | 0) 32.112 us | }
|
||
|
|
7238523.638050 | 0) 32.951 us | }
|
||
|
|
7238523.638051 | 0) 35.765 us | }
|
||
|
|
7238523.638051 | 0) 36.170 us | }
|
||
|
|
7238523.638051 | 0) | irq_exit() {
|
||
|
|
7238523.638051 | 0) 0.082 us | idle_cpu();
|
||
|
|
7238523.638052 | 0) 0.071 us | rcu_irq_exit();
|
||
|
|
7238523.638053 | 0) 1.328 us | }
|
||
|
|
7238523.638053 | 0) 40.563 us | }
|
||
|
|
7238523.638054 | 0) | __mmdrop() {
|
||
|
|
7238523.638054 | 0) | pgd_free() {
|
||
|
|
7238523.638055 | 0) 0.151 us | _raw_spin_lock();
|
||
|
|
7238523.638055 | 0) 0.069 us | _raw_spin_unlock();
|
||
|
|
7238523.638056 | 0) | xen_pgd_free() {
|
||
|
|
7238523.638056 | 0) 0.067 us | xen_get_user_pgd();
|
||
|
|
7238523.638057 | 0) | free_pages() {
|
||
|
|
7238523.638057 | 0) | __free_pages() {
|
||
|
|
7238523.638057 | 0) | free_hot_cold_page() {
|
||
|
|
7238523.638058 | 0) 0.080 us | free_pages_prepare();
|
||
|
|
7238523.638058 | 0) 0.363 us | get_pfnblock_flags_mask();
|
||
|
|
7238523.638059 | 0) 1.626 us | }
|
||
|
|
7238523.638059 | 0) 2.317 us | }
|
||
|
|
7238523.638060 | 0) 2.847 us | }
|
||
|
|
7238523.638060 | 0) 3.908 us | }
|
||
|
|
7238523.638060 | 0) | free_pages() {
|
||
|
|
7238523.638060 | 0) | __free_pages() {
|
||
|
|
7238523.638061 | 0) | free_hot_cold_page() {
|
||
|
|
7238523.638061 | 0) 0.083 us | free_pages_prepare();
|
||
|
|
7238523.638061 | 0) 0.139 us | get_pfnblock_flags_mask();
|
||
|
|
7238523.638062 | 0) 1.062 us | }
|
||
|
|
7238523.638062 | 0) 1.534 us | }
|
||
|
|
7238523.638062 | 0) 2.038 us | }
|
||
|
|
7238523.638063 | 0) 8.268 us | }
|
||
|
|
7238523.638064 | 0) 0.160 us | destroy_context();
|
||
|
|
7238523.638065 | 0) 0.384 us | kmem_cache_free();
|
||
|
|
7238523.638066 | 0) 11.433 us | }
|
||
|
|
7238523.638066 | 0) 54.448 us | }
|
||
|
|
7238523.638066 | 0) 19354026 us | } /* __schedule */
|
||
|
|
7238523.638067 | 0) 19354026 us | } /* schedule */
|
||
|
|
7238523.638067 | 0) 19354027 us | } /* schedule_timeout */
|
||
|
|
7238523.638067 | 0) 0.121 us | down_read();
|
||
|
|
7238523.638068 | 0) | copy_from_read_buf() {
|
||
|
|
7238523.638069 | 0) | tty_audit_add_data() {
|
||
|
|
7238523.638070 | 0) 0.220 us | _raw_spin_lock_irqsave();
|
||
|
|
7238523.638071 | 0) 0.097 us | _raw_spin_unlock_irqrestore();
|
||
|
|
7238523.638071 | 0) 0.078 us | _raw_spin_lock_irqsave();
|
||
|
|
7238523.638072 | 0) 0.077 us | _raw_spin_unlock_irqrestore();
|
||
|
|
7238523.638072 | 0) 2.795 us | }
|
||
|
|
7238523.638073 | 0) 4.183 us | }
|
||
|
|
7238523.638073 | 0) 0.084 us | copy_from_read_buf();
|
||
|
|
7238523.638074 | 0) 0.078 us | n_tty_set_room();
|
||
|
|
7238523.638074 | 0) 0.082 us | n_tty_write_wakeup();
|
||
|
|
7238523.638075 | 0) | __wake_up() {
|
||
|
|
7238523.638075 | 0) 0.084 us | _raw_spin_lock_irqsave();
|
||
|
|
7238523.638076 | 0) | __wake_up_common() {
|
||
|
|
7238523.638076 | 0) 0.095 us | pollwake();
|
||
|
|
7238523.638077 | 0) 0.819 us | }
|
||
|
|
7238523.638077 | 0) 0.074 us | _raw_spin_unlock_irqrestore();
|
||
|
|
7238523.638078 | 0) 2.463 us | }
|
||
|
|
7238523.638078 | 0) 0.071 us | n_tty_set_room();
|
||
|
|
7238523.638078 | 0) 0.082 us | up_read();
|
||
|
|
7238523.638079 | 0) | remove_wait_queue() {
|
||
|
|
7238523.638079 | 0) 0.082 us | _raw_spin_lock_irqsave();
|
||
|
|
7238523.638080 | 0) 0.086 us | _raw_spin_unlock_irqrestore();
|
||
|
|
7238523.638080 | 0) 1.239 us | }
|
||
|
|
7238523.638081 | 0) 0.142 us | mutex_unlock();
|
||
|
|
7238523.638081 | 0) 19354047 us | } /* n_tty_read */
|
||
|
|
7238523.638082 | 0) | tty_ldisc_deref() {
|
||
|
|
7238523.638082 | 0) 0.064 us | ldsem_up_read();
|
||
|
|
7238523.638082 | 0) 0.554 us | }
|
||
|
|
7238523.638083 | 0) 0.074 us | get_seconds();
|
||
|
|
7238523.638083 | 0) 19354052 us | } /* tty_read */
|
||
|
|
7238523.638084 | 0) 0.352 us | __fsnotify_parent();
|
||
|
|
7238523.638085 | 0) 0.178 us | fsnotify();
|
||
|
|
7238523.638085 | 0) 19354058 us | } /* vfs_read */
|
||
|
|
7238523.638156 | 0) | vfs_read() {
|
||
|
|
7238523.638157 | 0) | rw_verify_area() {
|
||
|
|
7238523.638157 | 0) | security_file_permission() {
|
||
|
|
7238523.638158 | 0) | apparmor_file_permission() {
|
||
|
|
7238523.638158 | 0) 0.183 us | common_file_perm();
|
||
|
|
7238523.638159 | 0) 0.778 us | }
|
||
|
|
7238523.638159 | 0) 0.081 us | __fsnotify_parent();
|
||
|
|
7238523.638160 | 0) 0.104 us | fsnotify();
|
||
|
|
7238523.638160 | 0) 2.662 us | }
|
||
|
|
7238523.638161 | 0) 3.337 us | }
|
||
|
|
7238523.638161 | 0) | tty_read() {
|
||
|
|
7238523.638161 | 0) 0.067 us | tty_paranoia_check();
|
||
|
|
7238523.638162 | 0) | tty_ldisc_ref_wait() {
|
||
|
|
7238523.638162 | 0) 0.080 us | } /* ldsem_down_read */
|
||
|
|
7238523.638163 | 0) 0.637 us | }
|
||
|
|
7238523.638163 | 0) | n_tty_read() {
|
||
|
|
7238523.638164 | 0) 0.078 us | _raw_spin_lock_irq();
|
||
|
|
7238523.638164 | 0) 0.090 us | mutex_lock_interruptible();
|
||
|
|
7238523.638165 | 0) 0.078 us | down_read();
|
||
|
|
7238523.638165 | 0) | add_wait_queue() {
|
||
|
|
7238523.638166 | 0) 0.070 us | _raw_spin_lock_irqsave();
|
||
|
|
7238523.638166 | 0) 0.084 us | _raw_spin_unlock_irqrestore();
|
||
|
|
7238523.638167 | 0) 1.111 us | }
|
||
|
|
7238523.638167 | 0) 0.083 us | tty_hung_up_p();
|
||
|
|
7238523.638168 | 0) 0.080 us | n_tty_set_room();
|
||
|
|
7238523.638169 | 0) 0.068 us | up_read();
|
||
|
|
7238523.638169 | 0) | schedule_timeout() {
|
||
|
|
7238523.638170 | 0) | schedule() {
|
||
|
|
7238523.638170 | 0) | __schedule() {
|
||
|
|
7238523.638171 | 0) 0.078 us | rcu_note_context_switch();
|
||
|
|
7238523.638171 | 0) 0.081 us | _raw_spin_lock_irq();
|
||
|
|
7238523.638172 | 0) | deactivate_task() {
|
||
|
|
7238523.638172 | 0) | dequeue_task() {
|
||
|
|
7238523.638172 | 0) 0.181 us | update_rq_clock();
|
||
|
|
7238523.638173 | 0) | dequeue_task_fair() {
|
||
|
|
7238523.638174 | 0) | dequeue_entity() {
|
||
|
|
7238523.638174 | 0) | update_curr() {
|
||
|
|
7238523.638174 | 0) 0.257 us | cpuacct_charge();
|
||
|
|
7238523.638175 | 0) 0.982 us | }
|
||
|
|
7238523.638175 | 0) 0.079 us | update_cfs_rq_blocked_load();
|
||
|
|
7238523.638176 | 0) 0.080 us | clear_buddies();
|
||
|
|
7238523.638177 | 0) 0.096 us | account_entity_dequeue();
|
||
|
|
7238523.638177 | 0) | update_cfs_shares() {
|
||
|
|
7238523.638178 | 0) 0.113 us | update_curr();
|
||
|
|
7238523.638178 | 0) 0.087 us | account_entity_dequeue();
|
||
|
|
7238523.638179 | 0) 0.073 us | account_entity_enqueue();
|
||
|
|
7238523.638179 | 0) 1.948 us | }
|
||
|
|
7238523.638180 | 0) 5.913 us | }
|
||
|
|
7238523.638180 | 0) | dequeue_entity() {
|
||
|
|
7238523.638180 | 0) 0.086 us | update_curr();
|
||
|
|
7238523.638181 | 0) 0.079 us | update_cfs_rq_blocked_load();
|
||
|
|
7238523.638182 | 0) 0.076 us | clear_buddies();
|
||
|
|
7238523.638182 | 0) 0.076 us | account_entity_dequeue();
|
||
|
|
7238523.638183 | 0) 0.104 us | update_cfs_shares();
|
||
|
|
7238523.638183 | 0) 3.171 us | }
|
||
|
|
7238523.638184 | 0) 0.076 us | hrtick_update();
|
||
|
|
7238523.638184 | 0) 10.785 us | }
|
||
|
|
7238523.638184 | 0) 12.057 us | }
|
||
|
|
7238523.638185 | 0) 12.704 us | }
|
||
|
|
7238523.638185 | 0) | pick_next_task_fair() {
|
||
|
|
7238523.638185 | 0) 0.074 us | check_cfs_rq_runtime();
|
||
|
|
7238523.638186 | 0) | pick_next_entity() {
|
||
|
|
7238523.638186 | 0) 0.067 us | clear_buddies();
|
||
|
|
7238523.638187 | 0) 0.544 us | }
|
||
|
|
7238523.638187 | 0) | put_prev_entity() {
|
||
|
|
7238523.638187 | 0) 0.079 us | check_cfs_rq_runtime();
|
||
|
|
7238523.638188 | 0) 0.612 us | }
|
||
|
|
7238523.638188 | 0) | put_prev_entity() {
|
||
|
|
7238523.638188 | 0) 0.076 us | check_cfs_rq_runtime();
|
||
|
|
7238523.638189 | 0) 0.618 us | }
|
||
|
|
7238523.638189 | 0) | set_next_entity() {
|
||
|
|
7238523.638190 | 0) 0.078 us | update_stats_wait_end();
|
||
|
|
7238523.638190 | 0) 0.712 us | }
|
||
|
|
7238523.638190 | 0) 5.023 us | }
|
||
|
|
7238523.638191 | 0) 0.086 us | paravirt_start_context_switch();
|
||
|
|
7238523.638192 | 0) 0.070 us | xen_read_cr0();
|
||
|
|
7238523.638193 | 0) | xen_write_cr0() {
|
||
|
|
7238523.638193 | 0) 0.085 us | paravirt_get_lazy_mode();
|
||
|
|
7238523.638194 | 0) 0.085 us | __xen_mc_entry();
|
||
|
|
7238523.638194 | 0) 0.077 us | paravirt_get_lazy_mode();
|
||
|
|
7238523.638195 | 0) 1.822 us | }
|
||
|
|
7238523.638195 | 0) | xen_load_sp0() {
|
||
|
|
7238523.638195 | 0) 0.074 us | paravirt_get_lazy_mode();
|
||
|
|
7238523.638196 | 0) 0.085 us | __xen_mc_entry();
|
||
|
|
7238523.638196 | 0) 0.078 us | paravirt_get_lazy_mode();
|
||
|
|
7238523.638197 | 0) 1.754 us | }
|
||
|
|
7238523.638197 | 0) | xen_load_tls() {
|
||
|
|
7238523.638198 | 0) 0.069 us | paravirt_get_lazy_mode();
|
||
|
|
7238523.638198 | 0) 0.082 us | paravirt_get_lazy_mode();
|
||
|
|
7238523.638199 | 0) 0.127 us | load_TLS_descriptor();
|
||
|
|
7238523.638199 | 0) 0.080 us | load_TLS_descriptor();
|
||
|
|
7238523.638200 | 0) 0.094 us | load_TLS_descriptor();
|
||
|
|
7238523.638201 | 0) 0.081 us | paravirt_get_lazy_mode();
|
||
|
|
7238523.638202 | 0) 4.155 us | }
|
||
|
|
7238523.638202 | 0) | xen_end_context_switch() {
|
||
|
|
7238523.638202 | 0) 0.699 us | xen_mc_flush();
|
||
|
|
7238523.638204 | 0) 0.089 us | paravirt_end_context_switch();
|
||
|
|
7238523.638204 | 0) 1.915 us | }
|
||
|
|
7238523.797630 | 0) | finish_task_switch() {
|
||
|
|
7238523.797634 | 0) | xen_evtchn_do_upcall() {
|
||
|
|
7238523.797634 | 0) | irq_enter() {
|
||
|
|
7238523.797634 | 0) 0.134 us | rcu_irq_enter();
|
||
|
|
7238523.797635 | 0) 0.688 us | }
|
||
|
|
7238523.797635 | 0) 0.055 us | exit_idle();
|
||
|
|
7238523.797635 | 0) | __xen_evtchn_do_upcall() {
|
||
|
|
7238523.797636 | 0) | evtchn_2l_handle_events() {
|
||
|
|
7238523.797636 | 0) 0.048 us | irq_from_virq();
|
||
|
|
7238523.797636 | 0) | evtchn_from_irq() {
|
||
|
|
7238523.797636 | 0) | irq_get_irq_data() {
|
||
|
|
7238523.797637 | 0) 0.061 us | irq_to_desc();
|
||
|
|
7238523.797637 | 0) 0.564 us | }
|
||
|
|
7238523.797637 | 0) 0.954 us | }
|
||
|
|
7238523.797638 | 0) | get_evtchn_to_irq() {
|
||
|
|
7238523.797638 | 0) 0.057 us | evtchn_2l_max_channels();
|
||
|
|
7238523.797638 | 0) 0.409 us | }
|
||
|
|
7238523.797638 | 0) | generic_handle_irq() {
|
||
|
|
7238523.797638 | 0) 0.052 us | irq_to_desc();
|
||
|
|
7238523.797639 | 0) | handle_percpu_irq() {
|
||
|
|
7238523.797639 | 0) | ack_dynirq() {
|
||
|
|
7238523.797639 | 0) | evtchn_from_irq() {
|
||
|
|
7238523.797639 | 0) | irq_get_irq_data() {
|
||
|
|
7238523.797640 | 0) 0.057 us | irq_to_desc();
|
||
|
|
7238523.797640 | 0) 0.440 us | }
|
||
|
|
7238523.797640 | 0) 0.746 us | }
|
||
|
|
7238523.797640 | 0) 0.056 us | irq_move_irq();
|
||
|
|
7238523.797641 | 0) 0.058 us | evtchn_2l_clear_pending();
|
||
|
|
7238523.797641 | 0) 1.729 us | }
|
||
|
|
7238523.797641 | 0) | handle_irq_event_percpu() {
|
||
|
|
7238523.797641 | 0) | xen_irq_work_interrupt() {
|
||
|
|
7238523.797642 | 0) | irq_enter() {
|
||
|
|
7238523.797642 | 0) 0.053 us | rcu_irq_enter();
|
||
|
|
7238523.797642 | 0) 0.396 us | }
|
||
|
|
7238523.797642 | 0) | __wake_up() {
|
||
|
|
7238523.797643 | 0) 0.053 us | _raw_spin_lock_irqsave();
|
||
|
|
7238523.797643 | 0) | __wake_up_common() {
|
||
|
|
7238523.797643 | 0) | autoremove_wake_function() {
|
||
|
|
7238523.797644 | 0) | default_wake_function() {
|
||
|
|
7238523.797644 | 0) | try_to_wake_up() {
|
||
|
|
7238523.797644 | 0) 0.228 us | _raw_spin_lock_irqsave();
|
||
|
|
7238523.797645 | 0) 0.194 us | task_waking_fair();
|
||
|
|
7238523.797645 | 0) | select_task_rq_fair() {
|
||
|
|
7238523.797645 | 0) 0.051 us | source_load();
|
||
|
|
7238523.797646 | 0) 0.050 us | target_load();
|
||
|
|
7238523.797646 | 0) 0.067 us | idle_cpu();
|
||
|
|
7238523.797647 | 0) 0.050 us | cpus_share_cache();
|
||
|
|
7238523.797647 | 0) 0.068 us | idle_cpu();
|
||
|
|
7238523.797647 | 0) 1.983 us | }
|
||
|
|
7238523.797648 | 0) 0.051 us | _raw_spin_lock();
|
||
|
|
7238523.797648 | 0) | ttwu_do_activate.constprop.124() {
|
||
|
|
7238523.797648 | 0) | activate_task() {
|
||
|
|
7238523.797648 | 0) | enqueue_task() {
|
||
|
|
7238523.797648 | 0) 0.135 us | update_rq_clock();
|
||
|
|
7238523.797649 | 0) | enqueue_task_fair() {
|
||
|
|
7238523.797649 | 0) | enqueue_entity() {
|
||
|
|
7238523.797649 | 0) 0.059 us | update_curr();
|
||
|
|
7238523.797650 | 0) 0.073 us | __compute_runnable_contrib.part.51();
|
||
|
|
7238523.797650 | 0) 0.066 us | __update_entity_load_avg_contrib();
|
||
|
|
7238523.797650 | 0) 0.059 us | update_cfs_rq_blocked_load();
|
||
|
|
7238523.797651 | 0) 0.064 us | account_entity_enqueue();
|
||
|
|
7238523.797651 | 0) 0.137 us | update_cfs_shares();
|
||
|
|
7238523.797651 | 0) 0.054 us | place_entity();
|
||
|
|
7238523.797652 | 0) 0.074 us | __enqueue_entity();
|
||
|
|
7238523.797652 | 0) 3.085 us | }
|
||
|
|
7238523.797652 | 0) | enqueue_entity() {
|
||
|
|
7238523.797653 | 0) 0.058 us | update_curr();
|
||
|
|
7238523.797654 | 0) 0.049 us | update_cfs_rq_blocked_load();
|
||
|
|
7238523.797654 | 0) 0.057 us | account_entity_enqueue();
|
||
|
|
7238523.797655 | 0) 0.066 us | update_cfs_shares();
|
||
|
|
7238523.797655 | 0) 0.049 us | place_entity();
|
||
|
|
7238523.797655 | 0) 0.051 us | __enqueue_entity();
|
||
|
|
7238523.797656 | 0) 3.432 us | }
|
||
|
|
7238523.797656 | 0) 0.049 us | hrtick_update();
|
||
|
|
7238523.797657 | 0) 7.552 us | }
|
||
|
|
7238523.797657 | 0) 8.414 us | }
|
||
|
|
7238523.797657 | 0) 8.753 us | }
|
||
|
|
7238523.797657 | 0) | ttwu_do_wakeup() {
|
||
|
|
7238523.797657 | 0) | check_preempt_curr() {
|
||
|
|
7238523.797657 | 0) | resched_task() {
|
||
|
|
7238523.797658 | 0) | xen_smp_send_reschedule() {
|
||
|
|
7238523.797658 | 0) | xen_send_IPI_one() {
|
||
|
|
7238523.797658 | 0) | notify_remote_via_irq() {
|
||
|
|
7238523.797658 | 0) | evtchn_from_irq() {
|
||
|
|
7238523.797658 | 0) | irq_get_irq_data() {
|
||
|
|
7238523.797659 | 0) 0.069 us | irq_to_desc();
|
||
|
|
7238523.797659 | 0) 0.504 us | }
|
||
|
|
7238523.797659 | 0) 0.869 us | }
|
||
|
|
7238523.797660 | 0) 1.940 us | } /* notify_remote_via_irq */
|
||
|
|
7238523.797660 | 0) 2.319 us | }
|
||
|
|
7238523.797660 | 0) 2.712 us | }
|
||
|
|
7238523.797661 | 0) 3.147 us | }
|
||
|
|
7238523.797661 | 0) 3.625 us | }
|
||
|
|
7238523.797662 | 0) 4.525 us | }
|
||
|
|
7238523.797662 | 0) 13.961 us | }
|
||
|
|
7238523.797662 | 0) 0.069 us | _raw_spin_unlock();
|
||
|
|
7238523.797663 | 0) 0.168 us | ttwu_stat();
|
||
|
|
7238523.797663 | 0) 0.076 us | _raw_spin_unlock_irqrestore();
|
||
|
|
7238523.797664 | 0) 19.821 us | }
|
||
|
|
7238523.797664 | 0) 20.301 us | }
|
||
|
|
7238523.797664 | 0) 20.796 us | }
|
||
|
|
7238523.797664 | 0) 21.367 us | }
|
||
|
|
7238523.797665 | 0) 0.071 us | _raw_spin_unlock_irqrestore();
|
||
|
|
7238523.797665 | 0) 22.621 us | }
|
||
|
|
7238523.797666 | 0) | irq_exit() {
|
||
|
|
7238523.797666 | 0) 0.085 us | idle_cpu();
|
||
|
|
7238523.797666 | 0) 0.106 us | rcu_irq_exit();
|
||
|
|
7238523.797667 | 0) 1.220 us | }
|
||
|
|
7238523.797667 | 0) 25.712 us | }
|
||
|
|
7238523.797668 | 0) 0.138 us | add_interrupt_randomness();
|
||
|
|
7238523.797668 | 0) 0.092 us | note_interrupt();
|
||
|
|
7238523.797669 | 0) 27.713 us | }
|
||
|
|
7238523.797669 | 0) 30.163 us | }
|
||
|
|
7238523.797669 | 0) 31.017 us | }
|
||
|
|
7238523.797670 | 0) 33.953 us | }
|
||
|
|
7238523.797670 | 0) 34.384 us | }
|
||
|
|
7238523.797670 | 0) | irq_exit() {
|
||
|
|
7238523.797671 | 0) 0.079 us | idle_cpu();
|
||
|
|
7238523.797671 | 0) 0.072 us | rcu_irq_exit();
|
||
|
|
7238523.797672 | 0) 1.023 us | }
|
||
|
|
7238523.797672 | 0) 37.789 us | }
|
||
|
|
7238523.797672 | 0) 39.298 us | }
|
||
|
|
7238523.797673 | 0) 159502.1 us | }
|
||
|
|
7238523.797673 | 0) 159502.8 us | }
|
||
|
|
7238523.797673 | 0) 159503.5 us | }
|
||
|
|
7238523.797674 | 0) 0.112 us | down_read();
|
||
|
|
7238523.797675 | 0) | copy_from_read_buf() {
|
||
|
|
7238523.797676 | 0) | tty_audit_add_data() {
|
||
|
|
7238523.797676 | 0) 0.226 us | _raw_spin_lock_irqsave();
|
||
|
|
7238523.797677 | 0) 0.075 us | _raw_spin_unlock_irqrestore();
|
||
|
|
7238523.797677 | 0) 0.101 us | _raw_spin_lock_irqsave();
|
||
|
|
7238523.797678 | 0) 0.068 us | _raw_spin_unlock_irqrestore();
|
||
|
|
7238523.797679 | 0) 2.656 us | }
|
||
|
|
7238523.797679 | 0) 3.762 us | }
|
||
|
|
7238523.797679 | 0) 0.145 us | copy_from_read_buf();
|
||
|
|
7238523.797680 | 0) 0.068 us | n_tty_set_room();
|
||
|
|
7238523.797680 | 0) 0.058 us | n_tty_write_wakeup();
|
||
|
|
7238523.797681 | 0) | __wake_up() {
|
||
|
|
7238523.797682 | 0) 0.060 us | _raw_spin_lock_irqsave();
|
||
|
|
7238523.797682 | 0) | __wake_up_common() {
|
||
|
|
7238523.797683 | 0) 0.083 us | pollwake();
|
||
|
|
7238523.797683 | 0) 0.739 us | }
|
||
|
|
7238523.797683 | 0) 0.069 us | _raw_spin_unlock_irqrestore();
|
||
|
|
7238523.797684 | 0) 2.745 us | }
|
||
|
|
7238523.797684 | 0) 0.061 us | n_tty_set_room();
|
||
|
|
7238523.797685 | 0) 0.074 us | up_read();
|
||
|
|
7238523.797685 | 0) | remove_wait_queue() {
|
||
|
|
7238523.797685 | 0) 0.075 us | _raw_spin_lock_irqsave();
|
||
|
|
7238523.797686 | 0) 0.070 us | _raw_spin_unlock_irqrestore();
|
||
|
|
7238523.797686 | 0) 1.110 us | }
|
||
|
|
7238523.797687 | 0) 0.146 us | mutex_unlock();
|
||
|
|
7238523.797687 | 0) 159524.0 us | }
|
||
|
|
7238523.797688 | 0) | tty_ldisc_deref() {
|
||
|
|
7238523.797688 | 0) 0.070 us | ldsem_up_read();
|
||
|
|
7238523.797689 | 0) 0.739 us | }
|
||
|
|
7238523.797689 | 0) 0.066 us | get_seconds();
|
||
|
|
7238523.797690 | 0) 159528.3 us | }
|
||
|
|
7238523.797690 | 0) 0.298 us | __fsnotify_parent();
|
||
|
|
7238523.797691 | 0) 0.179 us | fsnotify();
|
||
|
|
7238523.797692 | 0) 159534.6 us | }
|
||
|
|
7238523.797762 | 0) | vfs_read() {
|
||
|
|
7238523.797763 | 0) | rw_verify_area() {
|
||
|
|
7238523.797763 | 0) | security_file_permission() {
|
||
|
|
7238523.797764 | 0) | apparmor_file_permission() {
|
||
|
|
7238523.797764 | 0) 0.165 us | common_file_perm();
|
||
|
|
7238523.797765 | 0) 0.732 us | }
|
||
|
|
7238523.797765 | 0) 0.081 us | __fsnotify_parent();
|
||
|
|
7238523.797766 | 0) 0.094 us | fsnotify();
|
||
|
|
7238523.797766 | 0) 2.711 us | }
|
||
|
|
7238523.797767 | 0) 3.386 us | }
|
||
|
|
7238523.797767 | 0) | tty_read() {
|
||
|
|
7238523.797767 | 0) 0.077 us | tty_paranoia_check();
|
||
|
|
7238523.797768 | 0) | tty_ldisc_ref_wait() {
|
||
|
|
7238523.797768 | 0) 0.083 us | ldsem_down_read();
|
||
|
|
7238523.797769 | 0) 0.686 us | }
|
||
|
|
7238523.797769 | 0) | n_tty_read() {
|
||
|
|
7238523.797770 | 0) 0.071 us | _raw_spin_lock_irq();
|
||
|
|
7238523.797770 | 0) 0.111 us | mutex_lock_interruptible();
|
||
|
|
7238523.797771 | 0) 0.072 us | down_read();
|
||
|
|
7238523.797771 | 0) | add_wait_queue() {
|
||
|
|
7238523.797772 | 0) 0.083 us | _raw_spin_lock_irqsave();
|
||
|
|
7238523.797772 | 0) 0.085 us | _raw_spin_unlock_irqrestore();
|
||
|
|
7238523.797773 | 0) 1.124 us | }
|
||
|
|
7238523.797773 | 0) 0.066 us | tty_hung_up_p();
|
||
|
|
7238523.797774 | 0) 0.090 us | n_tty_set_room();
|
||
|
|
7238523.797774 | 0) 0.064 us | up_read();
|
||
|
|
7238523.797775 | 0) | schedule_timeout() {
|
||
|
|
7238523.797775 | 0) | schedule() {
|
||
|
|
7238523.797775 | 0) | __schedule() {
|
||
|
|
7238523.797776 | 0) 0.083 us | rcu_note_context_switch();
|
||
|
|
7238523.797776 | 0) 0.078 us | _raw_spin_lock_irq();
|
||
|
|
7238523.797777 | 0) | deactivate_task() {
|
||
|
|
7238523.797777 | 0) | dequeue_task() {
|
||
|
|
7238523.797777 | 0) 0.191 us | update_rq_clock();
|
||
|
|
7238523.797778 | 0) | dequeue_task_fair() {
|
||
|
|
7238523.797778 | 0) | dequeue_entity() {
|
||
|
|
7238523.797779 | 0) | update_curr() {
|
||
|
|
7238523.797779 | 0) 0.179 us | cpuacct_charge();
|
||
|
|
7238523.797780 | 0) 0.902 us | }
|
||
|
|
7238523.797780 | 0) 0.070 us | __update_entity_load_avg_contrib();
|
||
|
|
7238523.797781 | 0) 0.152 us | update_cfs_rq_blocked_load();
|
||
|
|
7238523.797781 | 0) 0.073 us | clear_buddies();
|
||
|
|
7238523.797782 | 0) 0.074 us | account_entity_dequeue();
|
||
|
|
7238523.797783 | 0) | update_cfs_shares() {
|
||
|
|
7238523.797783 | 0) 0.111 us | update_curr();
|
||
|
|
7238523.797783 | 0) 0.082 us | account_entity_dequeue();
|
||
|
|
7238523.797784 | 0) 0.081 us | account_entity_enqueue();
|
||
|
|
7238523.797785 | 0) 2.330 us | }
|
||
|
|
7238523.797785 | 0) 6.633 us | } /* dequeue_entity */
|
||
|
|
7238523.797786 | 0) | dequeue_entity() {
|
||
|
|
7238523.797786 | 0) 0.078 us | update_curr();
|
||
|
|
7238523.797787 | 0) 0.086 us | update_cfs_rq_blocked_load();
|
||
|
|
7238523.797787 | 0) 0.076 us | clear_buddies();
|
||
|
|
7238523.797788 | 0) 0.079 us | account_entity_dequeue();
|
||
|
|
7238523.797789 | 0) 0.074 us | update_cfs_shares();
|
||
|
|
7238523.797789 | 0) 3.287 us | }
|
||
|
|
7238523.797789 | 0) 0.074 us | hrtick_update();
|
||
|
|
7238523.797790 | 0) 11.606 us | }
|
||
|
|
7238523.797790 | 0) 12.879 us | }
|
||
|
|
7238523.797790 | 0) 13.406 us | }
|
||
|
|
7238523.797791 | 0) | pick_next_task_fair() {
|
||
|
|
7238523.797791 | 0) 0.073 us | check_cfs_rq_runtime();
|
||
|
|
7238523.797792 | 0) | pick_next_entity() {
|
||
|
|
7238523.797792 | 0) 0.076 us | clear_buddies();
|
||
|
|
7238523.797793 | 0) 0.663 us | }
|
||
|
|
7238523.797793 | 0) | put_prev_entity() {
|
||
|
|
7238523.797793 | 0) 0.076 us | check_cfs_rq_runtime();
|
||
|
|
7238523.797794 | 0) 0.598 us | }
|
||
|
|
7238523.797794 | 0) | put_prev_entity() {
|
||
|
|
7238523.797794 | 0) 0.078 us | check_cfs_rq_runtime();
|
||
|
|
7238523.797795 | 0) 0.618 us | }
|
||
|
|
7238523.797795 | 0) | set_next_entity() {
|
||
|
|
7238523.797795 | 0) 0.096 us | update_stats_wait_end();
|
||
|
|
7238523.797796 | 0) 0.738 us | }
|
||
|
|
7238523.797796 | 0) 5.222 us | }
|
||
|
|
7238523.797797 | 0) 0.078 us | paravirt_start_context_switch();
|
||
|
|
7238523.797798 | 0) 0.071 us | xen_read_cr0();
|
||
|
|
7238523.797799 | 0) | xen_write_cr0() {
|
||
|
|
7238523.797799 | 0) 0.078 us | paravirt_get_lazy_mode();
|
||
|
|
7238523.797800 | 0) 0.084 us | __xen_mc_entry();
|
||
|
|
7238523.797800 | 0) 0.076 us | paravirt_get_lazy_mode();
|
||
|
|
7238523.797801 | 0) 1.798 us | }
|
||
|
|
7238523.797801 | 0) | xen_load_sp0() {
|
||
|
|
7238523.797801 | 0) 0.080 us | paravirt_get_lazy_mode();
|
||
|
|
7238523.797802 | 0) 0.076 us | __xen_mc_entry();
|
||
|
|
7238523.797802 | 0) 0.073 us | paravirt_get_lazy_mode();
|
||
|
|
7238523.797803 | 0) 1.623 us | }
|
||
|
|
7238523.797803 | 0) | xen_load_tls() {
|
||
|
|
7238523.797803 | 0) 0.082 us | paravirt_get_lazy_mode();
|
||
|
|
7238523.797804 | 0) 0.084 us | paravirt_get_lazy_mode();
|
||
|
|
7238523.797804 | 0) 0.136 us | load_TLS_descriptor();
|
||
|
|
7238523.797805 | 0) 0.072 us | load_TLS_descriptor();
|
||
|
|
7238523.797806 | 0) 0.080 us | load_TLS_descriptor();
|
||
|
|
7238523.797806 | 0) 0.088 us | paravirt_get_lazy_mode();
|
||
|
|
7238523.797807 | 0) 3.360 us | }
|
||
|
|
7238523.797807 | 0) | xen_end_context_switch() {
|
||
|
|
7238523.797807 | 0) 0.601 us | xen_mc_flush();
|
||
|
|
7238523.797808 | 0) 0.098 us | paravirt_end_context_switch();
|
||
|
|
7238523.797809 | 0) 1.902 us | }
|
||
|
|
7238524.005649 | 0) | finish_task_switch() {
|
||
|
|
7238524.005653 | 0) | xen_evtchn_do_upcall() {
|
||
|
|
7238524.005653 | 0) | irq_enter() {
|
||
|
|
7238524.005653 | 0) 0.138 us | rcu_irq_enter();
|
||
|
|
7238524.005654 | 0) 0.753 us | }
|
||
|
|
7238524.005654 | 0) 0.056 us | exit_idle();
|
||
|
|
7238524.005655 | 0) | __xen_evtchn_do_upcall() {
|
||
|
|
7238524.005655 | 0) | evtchn_2l_handle_events() {
|
||
|
|
7238524.005655 | 0) 0.057 us | irq_from_virq();
|
||
|
|
7238524.005656 | 0) | evtchn_from_irq() {
|
||
|
|
7238524.005656 | 0) | irq_get_irq_data() {
|
||
|
|
7238524.005656 | 0) 0.050 us | irq_to_desc();
|
||
|
|
7238524.005656 | 0) 0.499 us | }
|
||
|
|
7238524.005657 | 0) 0.958 us | }
|
||
|
|
7238524.005657 | 0) | get_evtchn_to_irq() {
|
||
|
|
7238524.005657 | 0) 0.057 us | evtchn_2l_max_channels();
|
||
|
|
7238524.005658 | 0) 0.400 us | }
|
||
|
|
7238524.005659 | 0) | generic_handle_irq() {
|
||
|
|
7238524.005659 | 0) 0.052 us | irq_to_desc();
|
||
|
|
7238524.005659 | 0) | handle_percpu_irq() {
|
||
|
|
7238524.005659 | 0) | ack_dynirq() {
|
||
|
|
7238524.005659 | 0) | evtchn_from_irq() {
|
||
|
|
7238524.005660 | 0) | irq_get_irq_data() {
|
||
|
|
7238524.005660 | 0) 0.056 us | irq_to_desc();
|
||
|
|
7238524.005660 | 0) 0.439 us | }
|
||
|
|
7238524.005660 | 0) 0.739 us | }
|
||
|
|
7238524.005661 | 0) 0.051 us | irq_move_irq();
|
||
|
|
7238524.005661 | 0) 0.051 us | evtchn_2l_clear_pending();
|
||
|
|
7238524.005661 | 0) 1.963 us | }
|
||
|
|
7238524.005662 | 0) | handle_irq_event_percpu() {
|
||
|
|
7238524.005662 | 0) | xen_irq_work_interrupt() {
|
||
|
|
7238524.005662 | 0) | irq_enter() {
|
||
|
|
7238524.005662 | 0) 0.053 us | rcu_irq_enter();
|
||
|
|
7238524.005663 | 0) 0.392 us | }
|
||
|
|
7238524.005663 | 0) | __wake_up() {
|
||
|
|
7238524.005663 | 0) 0.058 us | _raw_spin_lock_irqsave();
|
||
|
|
7238524.005664 | 0) | __wake_up_common() {
|
||
|
|
7238524.005664 | 0) | autoremove_wake_function() {
|
||
|
|
7238524.005664 | 0) | default_wake_function() {
|
||
|
|
7238524.005665 | 0) | try_to_wake_up() {
|
||
|
|
7238524.005665 | 0) 0.226 us | _raw_spin_lock_irqsave();
|
||
|
|
7238524.005665 | 0) 0.392 us | task_waking_fair();
|
||
|
|
7238524.005666 | 0) | select_task_rq_fair() {
|
||
|
|
7238524.005666 | 0) 0.067 us | source_load();
|
||
|
|
7238524.005667 | 0) 0.057 us | target_load();
|
||
|
|
7238524.005667 | 0) 0.065 us | idle_cpu();
|
||
|
|
7238524.005668 | 0) 0.050 us | cpus_share_cache();
|
||
|
|
7238524.005668 | 0) 0.080 us | idle_cpu();
|
||
|
|
7238524.005668 | 0) 2.053 us | }
|
||
|
|
7238524.005669 | 0) 0.051 us | _raw_spin_lock();
|
||
|
|
7238524.005669 | 0) | ttwu_do_activate.constprop.124() {
|
||
|
|
7238524.005669 | 0) | activate_task() {
|
||
|
|
7238524.005669 | 0) | enqueue_task() {
|
||
|
|
7238524.005669 | 0) 0.165 us | update_rq_clock();
|
||
|
|
7238524.005670 | 0) | enqueue_task_fair() {
|
||
|
|
7238524.005670 | 0) | enqueue_entity() {
|
||
|
|
7238524.005670 | 0) 0.065 us | update_curr();
|
||
|
|
7238524.005671 | 0) 0.078 us | __compute_runnable_contrib.part.51();
|
||
|
|
7238524.005671 | 0) 0.070 us | __update_entity_load_avg_contrib();
|
||
|
|
7238524.005671 | 0) 0.051 us | update_cfs_rq_blocked_load();
|
||
|
|
7238524.005672 | 0) 0.069 us | account_entity_enqueue();
|
||
|
|
7238524.005672 | 0) 0.132 us | update_cfs_shares();
|
||
|
|
7238524.005673 | 0) 0.054 us | place_entity();
|
||
|
|
7238524.005673 | 0) 0.081 us | __enqueue_entity();
|
||
|
|
7238524.005673 | 0) 3.111 us | }
|
||
|
|
7238524.005673 | 0) | enqueue_entity() {
|
||
|
|
7238524.005674 | 0) 0.059 us | update_curr();
|
||
|
|
7238524.005674 | 0) 0.057 us | update_cfs_rq_blocked_load();
|
||
|
|
7238524.005674 | 0) 0.067 us | account_entity_enqueue();
|
||
|
|
7238524.005675 | 0) 0.082 us | update_cfs_shares();
|
||
|
|
7238524.005675 | 0) 0.120 us | place_entity();
|
||
|
|
7238524.005675 | 0) 0.051 us | __enqueue_entity();
|
||
|
|
7238524.005676 | 0) 2.075 us | }
|
||
|
|
7238524.005676 | 0) 0.049 us | hrtick_update();
|
||
|
|
7238524.005676 | 0) 6.167 us | }
|
||
|
|
7238524.005676 | 0) 6.979 us | }
|
||
|
|
7238524.005676 | 0) 7.317 us | }
|
||
|
|
7238524.005677 | 0) | ttwu_do_wakeup() {
|
||
|
|
7238524.005677 | 0) | check_preempt_curr() {
|
||
|
|
7238524.005677 | 0) | resched_task() {
|
||
|
|
7238524.005677 | 0) | xen_smp_send_reschedule() {
|
||
|
|
7238524.005677 | 0) | xen_send_IPI_one() {
|
||
|
|
7238524.005678 | 0) | notify_remote_via_irq() {
|
||
|
|
7238524.005678 | 0) | evtchn_from_irq() {
|
||
|
|
7238524.005678 | 0) | irq_get_irq_data() {
|
||
|
|
7238524.005678 | 0) 0.051 us | irq_to_desc();
|
||
|
|
7238524.005679 | 0) 0.545 us | }
|
||
|
|
7238524.005679 | 0) 0.910 us | }
|
||
|
|
7238524.005680 | 0) 1.962 us | } /* notify_remote_via_irq */
|
||
|
|
7238524.005680 | 0) 2.332 us | }
|
||
|
|
7238524.005680 | 0) 2.684 us | }
|
||
|
|
7238524.005681 | 0) 3.606 us | }
|
||
|
|
7238524.005681 | 0) 4.064 us | }
|
||
|
|
7238524.005682 | 0) 5.129 us | }
|
||
|
|
7238524.005682 | 0) 13.194 us | }
|
||
|
|
7238524.005683 | 0) 0.066 us | _raw_spin_unlock();
|
||
|
|
7238524.005683 | 0) 0.165 us | ttwu_stat();
|
||
|
|
7238524.005684 | 0) 0.070 us | _raw_spin_unlock_irqrestore();
|
||
|
|
7238524.005684 | 0) 19.634 us | }
|
||
|
|
7238524.005685 | 0) 20.080 us | }
|
||
|
|
7238524.005685 | 0) 20.608 us | }
|
||
|
|
7238524.005685 | 0) 21.348 us | }
|
||
|
|
7238524.005685 | 0) 0.084 us | _raw_spin_unlock_irqrestore();
|
||
|
|
7238524.005686 | 0) 22.728 us | }
|
||
|
|
7238524.005686 | 0) | irq_exit() {
|
||
|
|
7238524.005687 | 0) 0.077 us | idle_cpu();
|
||
|
|
7238524.005687 | 0) 0.093 us | rcu_irq_exit();
|
||
|
|
7238524.005688 | 0) 1.101 us | }
|
||
|
|
7238524.005688 | 0) 25.644 us | }
|
||
|
|
7238524.005688 | 0) 0.138 us | add_interrupt_randomness();
|
||
|
|
7238524.005689 | 0) 0.083 us | note_interrupt();
|
||
|
|
7238524.005689 | 0) 27.672 us | }
|
||
|
|
7238524.005690 | 0) 30.410 us | }
|
||
|
|
7238524.005690 | 0) 31.458 us | }
|
||
|
|
7238524.005690 | 0) 35.276 us | }
|
||
|
|
7238524.005691 | 0) 35.797 us | }
|
||
|
|
7238524.005691 | 0) | irq_exit() {
|
||
|
|
7238524.005691 | 0) 0.066 us | idle_cpu();
|
||
|
|
7238524.005692 | 0) 0.080 us | rcu_irq_exit();
|
||
|
|
7238524.005692 | 0) 1.110 us | }
|
||
|
|
7238524.005693 | 0) 39.440 us | }
|
||
|
|
7238524.005693 | 0) 41.142 us | }
|
||
|
|
7238524.005694 | 0) 207918.1 us | }
|
||
|
|
7238524.005694 | 0) 207918.7 us | }
|
||
|
|
7238524.005694 | 0) 207919.4 us | }
|
||
|
|
7238524.005695 | 0) 0.068 us | down_read();
|
||
|
|
7238524.005696 | 0) | copy_from_read_buf() {
|
||
|
|
7238524.005697 | 0) | tty_audit_add_data() {
|
||
|
|
7238524.005697 | 0) 0.233 us | _raw_spin_lock_irqsave();
|
||
|
|
7238524.005698 | 0) 0.076 us | _raw_spin_unlock_irqrestore();
|
||
|
|
7238524.005699 | 0) 0.076 us | _raw_spin_lock_irqsave();
|
||
|
|
7238524.005699 | 0) 0.078 us | _raw_spin_unlock_irqrestore();
|
||
|
|
7238524.005700 | 0) 2.696 us | }
|
||
|
|
7238524.005700 | 0) 4.335 us | }
|
||
|
|
7238524.005701 | 0) 0.086 us | copy_from_read_buf();
|
||
|
|
7238524.005701 | 0) 0.074 us | n_tty_set_room();
|
||
|
|
7238524.005702 | 0) 0.085 us | n_tty_write_wakeup();
|
||
|
|
7238524.005702 | 0) | __wake_up() {
|
||
|
|
7238524.005703 | 0) 0.061 us | _raw_spin_lock_irqsave();
|
||
|
|
7238524.005703 | 0) | __wake_up_common() {
|
||
|
|
7238524.005703 | 0) 0.080 us | pollwake();
|
||
|
|
7238524.005704 | 0) 0.687 us | }
|
||
|
|
7238524.005704 | 0) 0.063 us | _raw_spin_unlock_irqrestore();
|
||
|
|
7238524.005705 | 0) 2.040 us | }
|
||
|
|
7238524.005705 | 0) 0.071 us | n_tty_set_room();
|
||
|
|
7238524.005706 | 0) 0.074 us | up_read();
|
||
|
|
7238524.005706 | 0) | remove_wait_queue() {
|
||
|
|
7238524.005706 | 0) 0.074 us | _raw_spin_lock_irqsave();
|
||
|
|
7238524.005707 | 0) 0.069 us | _raw_spin_unlock_irqrestore();
|
||
|
|
7238524.005707 | 0) 1.076 us | }
|
||
|
|
7238524.005708 | 0) 0.139 us | mutex_unlock();
|
||
|
|
7238524.005708 | 0) 207939.0 us | }
|
||
|
|
7238524.005709 | 0) | tty_ldisc_deref() {
|
||
|
|
7238524.005709 | 0) 0.077 us | ldsem_up_read();
|
||
|
|
7238524.005710 | 0) 0.702 us | }
|
||
|
|
7238524.005710 | 0) 0.068 us | get_seconds();
|
||
|
|
7238524.005711 | 0) 207943.4 us | }
|
||
|
|
7238524.005712 | 0) 0.301 us | __fsnotify_parent();
|
||
|
|
7238524.005713 | 0) 0.157 us | fsnotify();
|
||
|
|
7238524.005713 | 0) 207950.3 us | }
|
||
|
|
7238524.005783 | 0) | vfs_read() {
|
||
|
|
7238524.005784 | 0) | rw_verify_area() {
|
||
|
|
7238524.005784 | 0) | security_file_permission() {
|
||
|
|
7238524.005785 | 0) | apparmor_file_permission() {
|
||
|
|
7238524.005785 | 0) 0.164 us | common_file_perm();
|
||
|
|
7238524.005786 | 0) 0.790 us | }
|
||
|
|
7238524.005786 | 0) 0.080 us | __fsnotify_parent();
|
||
|
|
7238524.005787 | 0) 0.094 us | fsnotify();
|
||
|
|
7238524.005787 | 0) 2.683 us | }
|
||
|
|
7238524.005788 | 0) 3.313 us | }
|
||
|
|
7238524.005788 | 0) | tty_read() {
|
||
|
|
7238524.005788 | 0) 0.087 us | tty_paranoia_check();
|
||
|
|
7238524.005789 | 0) | tty_ldisc_ref_wait() {
|
||
|
|
7238524.005789 | 0) 0.080 us | ldsem_down_read();
|
||
|
|
7238524.005790 | 0) 0.683 us | }
|
||
|
|
7238524.005790 | 0) | n_tty_read() {
|
||
|
|
7238524.005791 | 0) 0.080 us | _raw_spin_lock_irq();
|
||
|
|
7238524.005791 | 0) 0.104 us | mutex_lock_interruptible();
|
||
|
|
7238524.005792 | 0) 0.070 us | down_read();
|
||
|
|
7238524.005792 | 0) | add_wait_queue() {
|
||
|
|
7238524.005793 | 0) 0.079 us | _raw_spin_lock_irqsave();
|
||
|
|
7238524.005793 | 0) 0.087 us | _raw_spin_unlock_irqrestore();
|
||
|
|
7238524.005794 | 0) 1.147 us | }
|
||
|
|
7238524.005794 | 0) 0.078 us | tty_hung_up_p();
|
||
|
|
7238524.005795 | 0) 0.071 us | n_tty_set_room();
|
||
|
|
7238524.005795 | 0) 0.077 us | up_read();
|
||
|
|
7238524.005796 | 0) | schedule_timeout() {
|
||
|
|
7238524.005796 | 0) | schedule() {
|
||
|
|
7238524.005796 | 0) | __schedule() {
|
||
|
|
7238524.005797 | 0) 0.087 us | rcu_note_context_switch();
|
||
|
|
7238524.005797 | 0) 0.075 us | _raw_spin_lock_irq();
|
||
|
|
7238524.005798 | 0) | deactivate_task() {
|
||
|
|
7238524.005798 | 0) | dequeue_task() {
|
||
|
|
7238524.005798 | 0) 0.177 us | update_rq_clock();
|
||
|
|
7238524.005799 | 0) | dequeue_task_fair() {
|
||
|
|
7238524.005799 | 0) | dequeue_entity() {
|
||
|
|
7238524.005800 | 0) | update_curr() {
|
||
|
|
7238524.005800 | 0) 0.334 us | cpuacct_charge();
|
||
|
|
7238524.005801 | 0) 1.199 us | }
|
||
|
|
7238524.005802 | 0) 0.081 us | __update_entity_load_avg_contrib();
|
||
|
|
7238524.005802 | 0) 0.064 us | update_cfs_rq_blocked_load();
|
||
|
|
7238524.005803 | 0) 0.076 us | clear_buddies();
|
||
|
|
7238524.005803 | 0) 0.079 us | account_entity_dequeue();
|
||
|
|
7238524.005804 | 0) | update_cfs_shares() {
|
||
|
|
7238524.005804 | 0) 0.108 us | update_curr();
|
||
|
|
7238524.005805 | 0) 0.083 us | account_entity_dequeue();
|
||
|
|
7238524.005805 | 0) 0.084 us | account_entity_enqueue();
|
||
|
|
7238524.005806 | 0) 1.869 us | }
|
||
|
|
7238524.005806 | 0) 6.530 us | } /* dequeue_entity */
|
||
|
|
7238524.005807 | 0) | dequeue_entity() {
|
||
|
|
7238524.005807 | 0) 0.104 us | update_curr();
|
||
|
|
7238524.005808 | 0) 0.115 us | __update_entity_load_avg_contrib();
|
||
|
|
7238524.005808 | 0) 0.069 us | update_cfs_rq_blocked_load();
|
||
|
|
7238524.005809 | 0) 0.066 us | clear_buddies();
|
||
|
|
7238524.005809 | 0) 0.086 us | account_entity_dequeue();
|
||
|
|
7238524.005810 | 0) 0.102 us | update_cfs_shares();
|
||
|
|
7238524.005811 | 0) 3.907 us | }
|
||
|
|
7238524.005811 | 0) 0.071 us | hrtick_update();
|
||
|
|
7238524.005812 | 0) 12.301 us | }
|
||
|
|
7238524.005812 | 0) 13.546 us | }
|
||
|
|
7238524.005812 | 0) 14.105 us | }
|
||
|
|
7238524.005812 | 0) | pick_next_task_fair() {
|
||
|
|
7238524.005813 | 0) 0.078 us | check_cfs_rq_runtime();
|
||
|
|
7238524.005813 | 0) | pick_next_entity() {
|
||
|
|
7238524.005814 | 0) 0.071 us | clear_buddies();
|
||
|
|
7238524.005815 | 0) 0.585 us | }
|
||
|
|
7238524.005815 | 0) | put_prev_entity() {
|
||
|
|
7238524.005815 | 0) 0.073 us | check_cfs_rq_runtime();
|
||
|
|
7238524.005816 | 0) 0.717 us | }
|
||
|
|
7238524.005816 | 0) | put_prev_entity() {
|
||
|
|
7238524.005817 | 0) 0.080 us | check_cfs_rq_runtime();
|
||
|
|
7238524.005817 | 0) 0.687 us | }
|
||
|
|
7238524.005817 | 0) | set_next_entity() {
|
||
|
|
7238524.005818 | 0) 0.091 us | update_stats_wait_end();
|
||
|
|
7238524.005818 | 0) 0.786 us | }
|
||
|
|
7238524.005819 | 0) 6.135 us | }
|
||
|
|
7238524.005820 | 0) 0.091 us | paravirt_start_context_switch();
|
||
|
|
7238524.005821 | 0) 0.089 us | xen_read_cr0();
|
||
|
|
7238524.005821 | 0) | xen_write_cr0() {
|
||
|
|
7238524.005821 | 0) 0.078 us | paravirt_get_lazy_mode();
|
||
|
|
7238524.005822 | 0) 0.083 us | __xen_mc_entry();
|
||
|
|
7238524.005823 | 0) 0.074 us | paravirt_get_lazy_mode();
|
||
|
|
7238524.005823 | 0) 1.657 us | }
|
||
|
|
7238524.005823 | 0) | xen_load_sp0() {
|
||
|
|
7238524.005824 | 0) 0.074 us | paravirt_get_lazy_mode();
|
||
|
|
7238524.005824 | 0) 0.083 us | __xen_mc_entry();
|
||
|
|
7238524.005825 | 0) 0.087 us | paravirt_get_lazy_mode();
|
||
|
|
7238524.005825 | 0) 1.764 us | }
|
||
|
|
7238524.005826 | 0) | xen_load_tls() {
|
||
|
|
7238524.005826 | 0) 0.077 us | paravirt_get_lazy_mode();
|
||
|
|
7238524.005826 | 0) 0.084 us | paravirt_get_lazy_mode();
|
||
|
|
7238524.005827 | 0) 0.150 us | load_TLS_descriptor();
|
||
|
|
7238524.005828 | 0) 0.082 us | load_TLS_descriptor();
|
||
|
|
7238524.005828 | 0) 0.084 us | load_TLS_descriptor();
|
||
|
|
7238524.005829 | 0) 0.076 us | paravirt_get_lazy_mode();
|
||
|
|
7238524.005829 | 0) 3.388 us | }
|
||
|
|
7238524.005829 | 0) | xen_end_context_switch() {
|
||
|
|
7238524.005830 | 0) 0.731 us | xen_mc_flush();
|
||
|
|
7238524.005831 | 0) 0.093 us | paravirt_end_context_switch();
|
||
|
|
7238524.005831 | 0) 1.836 us | }
|
||
|
|
7238524.141853 | 0) | finish_task_switch() {
|
||
|
|
7238524.141857 | 0) | xen_evtchn_do_upcall() {
|
||
|
|
7238524.141858 | 0) | irq_enter() {
|
||
|
|
7238524.141858 | 0) 0.133 us | rcu_irq_enter();
|
||
|
|
7238524.141859 | 0) 0.766 us | }
|
||
|
|
7238524.141859 | 0) 0.056 us | exit_idle();
|
||
|
|
7238524.141859 | 0) | __xen_evtchn_do_upcall() {
|
||
|
|
7238524.141859 | 0) | evtchn_2l_handle_events() {
|
||
|
|
7238524.141860 | 0) 0.049 us | irq_from_virq();
|
||
|
|
7238524.141860 | 0) | evtchn_from_irq() {
|
||
|
|
7238524.141860 | 0) | irq_get_irq_data() {
|
||
|
|
7238524.141860 | 0) 0.058 us | irq_to_desc();
|
||
|
|
7238524.141861 | 0) 0.498 us | }
|
||
|
|
7238524.141861 | 0) 0.897 us | }
|
||
|
|
7238524.141861 | 0) | get_evtchn_to_irq() {
|
||
|
|
7238524.141861 | 0) 0.049 us | evtchn_2l_max_channels();
|
||
|
|
7238524.141862 | 0) 0.392 us | }
|
||
|
|
7238524.141862 | 0) | generic_handle_irq() {
|
||
|
|
7238524.141862 | 0) 0.061 us | irq_to_desc();
|
||
|
|
7238524.141862 | 0) | handle_percpu_irq() {
|
||
|
|
7238524.141863 | 0) | ack_dynirq() {
|
||
|
|
7238524.141863 | 0) | evtchn_from_irq() {
|
||
|
|
7238524.141863 | 0) | irq_get_irq_data() {
|
||
|
|
7238524.141863 | 0) 0.051 us | irq_to_desc();
|
||
|
|
7238524.141863 | 0) 0.439 us | }
|
||
|
|
7238524.141864 | 0) 0.745 us | }
|
||
|
|
7238524.141864 | 0) 0.049 us | irq_move_irq();
|
||
|
|
7238524.141864 | 0) 0.060 us | evtchn_2l_clear_pending();
|
||
|
|
7238524.141864 | 0) 1.714 us | }
|
||
|
|
7238524.141865 | 0) | handle_irq_event_percpu() {
|
||
|
|
7238524.141865 | 0) | xen_irq_work_interrupt() {
|
||
|
|
7238524.141865 | 0) | irq_enter() {
|
||
|
|
7238524.141865 | 0) 0.053 us | rcu_irq_enter();
|
||
|
|
7238524.141866 | 0) 0.371 us | }
|
||
|
|
7238524.141866 | 0) | __wake_up() {
|
||
|
|
7238524.141866 | 0) 0.051 us | _raw_spin_lock_irqsave();
|
||
|
|
7238524.141867 | 0) | __wake_up_common() {
|
||
|
|
7238524.141867 | 0) | autoremove_wake_function() {
|
||
|
|
7238524.141867 | 0) | default_wake_function() {
|
||
|
|
7238524.141867 | 0) | try_to_wake_up() {
|
||
|
|
7238524.141868 | 0) 0.213 us | _raw_spin_lock_irqsave();
|
||
|
|
7238524.141869 | 0) 0.196 us | task_waking_fair();
|
||
|
|
7238524.141870 | 0) | select_task_rq_fair() {
|
||
|
|
7238524.141870 | 0) 0.051 us | source_load();
|
||
|
|
7238524.141870 | 0) 0.049 us | target_load();
|
||
|
|
7238524.141871 | 0) 0.065 us | idle_cpu();
|
||
|
|
7238524.141871 | 0) 0.051 us | cpus_share_cache();
|
||
|
|
7238524.141872 | 0) 0.078 us | idle_cpu();
|
||
|
|
7238524.141872 | 0) 2.427 us | }
|
||
|
|
7238524.141873 | 0) 0.050 us | _raw_spin_lock();
|
||
|
|
7238524.141873 | 0) | ttwu_do_activate.constprop.124() {
|
||
|
|
7238524.141873 | 0) | activate_task() {
|
||
|
|
7238524.141873 | 0) | enqueue_task() {
|
||
|
|
7238524.141873 | 0) 0.170 us | update_rq_clock();
|
||
|
|
7238524.141874 | 0) | enqueue_task_fair() {
|
||
|
|
7238524.141874 | 0) | enqueue_entity() {
|
||
|
|
7238524.141874 | 0) 0.058 us | update_curr();
|
||
|
|
7238524.141875 | 0) 0.076 us | __compute_runnable_contrib.part.51();
|
||
|
|
7238524.141875 | 0) 0.059 us | __update_entity_load_avg_contrib();
|
||
|
|
7238524.141875 | 0) 0.060 us | update_cfs_rq_blocked_load();
|
||
|
|
7238524.141876 | 0) 0.064 us | account_entity_enqueue();
|
||
|
|
7238524.141876 | 0) 0.123 us | update_cfs_shares();
|
||
|
|
7238524.141876 | 0) 0.055 us | place_entity();
|
||
|
|
7238524.141877 | 0) 0.078 us | __enqueue_entity();
|
||
|
|
7238524.141877 | 0) 3.039 us | }
|
||
|
|
7238524.141877 | 0) | enqueue_entity() {
|
||
|
|
7238524.141877 | 0) 0.065 us | update_curr();
|
||
|
|
7238524.141878 | 0) 0.050 us | update_cfs_rq_blocked_load();
|
||
|
|
7238524.141878 | 0) 0.049 us | account_entity_enqueue();
|
||
|
|
7238524.141878 | 0) 0.081 us | update_cfs_shares();
|
||
|
|
7238524.141879 | 0) 0.049 us | place_entity();
|
||
|
|
7238524.141879 | 0) 0.051 us | __enqueue_entity();
|
||
|
|
7238524.141879 | 0) 2.021 us | }
|
||
|
|
7238524.141880 | 0) 0.049 us | hrtick_update();
|
||
|
|
7238524.141880 | 0) 6.040 us | }
|
||
|
|
7238524.141880 | 0) 6.874 us | }
|
||
|
|
7238524.141880 | 0) 7.212 us | }
|
||
|
|
7238524.141880 | 0) | ttwu_do_wakeup() {
|
||
|
|
7238524.141881 | 0) | check_preempt_curr() {
|
||
|
|
7238524.141881 | 0) | resched_task() {
|
||
|
|
7238524.141881 | 0) | xen_smp_send_reschedule() {
|
||
|
|
7238524.141881 | 0) | xen_send_IPI_one() {
|
||
|
|
7238524.141881 | 0) | notify_remote_via_irq() {
|
||
|
|
7238524.141881 | 0) | evtchn_from_irq() {
|
||
|
|
7238524.141882 | 0) | irq_get_irq_data() {
|
||
|
|
7238524.141882 | 0) 0.049 us | irq_to_desc();
|
||
|
|
7238524.141882 | 0) 0.497 us | }
|
||
|
|
7238524.141882 | 0) 0.860 us | }
|
||
|
|
7238524.141883 | 0) 1.882 us | } /* notify_remote_via_irq */
|
||
|
|
7238524.141884 | 0) 2.257 us | }
|
||
|
|
7238524.141884 | 0) 2.619 us | }
|
||
|
|
7238524.141884 | 0) 3.079 us | }
|
||
|
|
7238524.141884 | 0) 3.526 us | }
|
||
|
|
7238524.141885 | 0) 4.485 us | }
|
||
|
|
7238524.141885 | 0) 12.333 us | }
|
||
|
|
7238524.141885 | 0) 0.062 us | _raw_spin_unlock();
|
||
|
|
7238524.141886 | 0) 0.169 us | ttwu_stat();
|
||
|
|
7238524.141887 | 0) 0.076 us | _raw_spin_unlock_irqrestore();
|
||
|
|
7238524.141887 | 0) 19.434 us | }
|
||
|
|
7238524.141887 | 0) 19.909 us | }
|
||
|
|
7238524.141888 | 0) 20.377 us | }
|
||
|
|
7238524.141888 | 0) 21.020 us | }
|
||
|
|
7238524.141888 | 0) 0.075 us | _raw_spin_unlock_irqrestore();
|
||
|
|
7238524.141888 | 0) 22.268 us | }
|
||
|
|
7238524.141889 | 0) | irq_exit() {
|
||
|
|
7238524.141889 | 0) 0.087 us | idle_cpu();
|
||
|
|
7238524.141889 | 0) 0.101 us | rcu_irq_exit();
|
||
|
|
7238524.141890 | 0) 1.127 us | }
|
||
|
|
7238524.141890 | 0) 25.163 us | }
|
||
|
|
7238524.141891 | 0) 0.133 us | add_interrupt_randomness();
|
||
|
|
7238524.141892 | 0) 0.083 us | note_interrupt();
|
||
|
|
7238524.141892 | 0) 27.453 us | }
|
||
|
|
7238524.141893 | 0) 30.024 us | }
|
||
|
|
7238524.141893 | 0) 30.898 us | }
|
||
|
|
7238524.141893 | 0) 33.683 us | }
|
||
|
|
7238524.141893 | 0) 34.097 us | }
|
||
|
|
7238524.141894 | 0) | irq_exit() {
|
||
|
|
7238524.141894 | 0) 0.065 us | idle_cpu();
|
||
|
|
7238524.141895 | 0) 0.076 us | rcu_irq_exit();
|
||
|
|
7238524.141895 | 0) 1.135 us | }
|
||
|
|
7238524.141895 | 0) 37.746 us | }
|
||
|
|
7238524.141896 | 0) 39.634 us | }
|
||
|
|
7238524.141897 | 0) 136100.0 us | }
|
||
|
|
7238524.141897 | 0) 136100.6 us | }
|
||
|
|
7238524.141897 | 0) 136101.4 us | }
|
||
|
|
7238524.141898 | 0) 0.093 us | down_read();
|
||
|
|
7238524.141899 | 0) | copy_from_read_buf() {
|
||
|
|
7238524.141900 | 0) | tty_audit_add_data() {
|
||
|
|
7238524.141900 | 0) 0.238 us | _raw_spin_lock_irqsave();
|
||
|
|
7238524.141901 | 0) 0.069 us | _raw_spin_unlock_irqrestore();
|
||
|
|
7238524.141901 | 0) 0.090 us | _raw_spin_lock_irqsave();
|
||
|
|
7238524.141902 | 0) 0.077 us | _raw_spin_unlock_irqrestore();
|
||
|
|
7238524.141902 | 0) 2.513 us | }
|
||
|
|
7238524.141903 | 0) 3.632 us | }
|
||
|
|
7238524.141903 | 0) 0.085 us | copy_from_read_buf();
|
||
|
|
7238524.141904 | 0) 0.066 us | n_tty_set_room();
|
||
|
|
7238524.141905 | 0) 0.067 us | n_tty_write_wakeup();
|
||
|
|
7238524.141905 | 0) | __wake_up() {
|
||
|
|
7238524.141906 | 0) 0.070 us | _raw_spin_lock_irqsave();
|
||
|
|
7238524.141906 | 0) | __wake_up_common() {
|
||
|
|
7238524.141906 | 0) 0.086 us | pollwake();
|
||
|
|
7238524.141907 | 0) 0.620 us | }
|
||
|
|
7238524.141907 | 0) 0.064 us | _raw_spin_unlock_irqrestore();
|
||
|
|
7238524.141907 | 0) 1.980 us | }
|
||
|
|
7238524.141908 | 0) 0.059 us | n_tty_set_room();
|
||
|
|
7238524.141909 | 0) 0.071 us | up_read();
|
||
|
|
7238524.141909 | 0) | remove_wait_queue() {
|
||
|
|
7238524.141909 | 0) 0.079 us | _raw_spin_lock_irqsave();
|
||
|
|
7238524.141910 | 0) 0.082 us | _raw_spin_unlock_irqrestore();
|
||
|
|
7238524.141910 | 0) 1.164 us | }
|
||
|
|
7238524.141910 | 0) 0.142 us | mutex_unlock();
|
||
|
|
7238524.141911 | 0) 136120.9 us | }
|
||
|
|
7238524.141911 | 0) | tty_ldisc_deref() {
|
||
|
|
7238524.141912 | 0) 0.062 us | ldsem_up_read();
|
||
|
|
7238524.141912 | 0) 0.593 us | }
|
||
|
|
7238524.141912 | 0) 0.079 us | get_seconds();
|
||
|
|
7238524.141913 | 0) 136125.1 us | }
|
||
|
|
7238524.141914 | 0) 0.280 us | __fsnotify_parent();
|
||
|
|
7238524.141915 | 0) 0.187 us | fsnotify();
|
||
|
|
7238524.141915 | 0) 136131.2 us | }
|
||
|
|
7238524.141988 | 0) | vfs_read() {
|
||
|
|
7238524.141989 | 0) | rw_verify_area() {
|
||
|
|
7238524.141989 | 0) | security_file_permission() {
|
||
|
|
7238524.141989 | 0) | apparmor_file_permission() {
|
||
|
|
7238524.141990 | 0) 0.149 us | common_file_perm();
|
||
|
|
7238524.141990 | 0) 0.774 us | }
|
||
|
|
7238524.141991 | 0) 0.079 us | __fsnotify_parent();
|
||
|
|
7238524.141991 | 0) 0.095 us | fsnotify();
|
||
|
|
7238524.141992 | 0) 2.558 us | }
|
||
|
|
7238524.141992 | 0) 3.300 us | }
|
||
|
|
7238524.141993 | 0) | tty_read() {
|
||
|
|
7238524.141993 | 0) 0.076 us | tty_paranoia_check();
|
||
|
|
7238524.141994 | 0) | tty_ldisc_ref_wait() {
|
||
|
|
7238524.141994 | 0) 0.081 us | ldsem_down_read();
|
||
|
|
7238524.141995 | 0) 0.689 us | }
|
||
|
|
7238524.141995 | 0) | n_tty_read() {
|
||
|
|
7238524.141995 | 0) 0.073 us | _raw_spin_lock_irq();
|
||
|
|
7238524.141996 | 0) 0.110 us | mutex_lock_interruptible();
|
||
|
|
7238524.141997 | 0) 0.069 us | down_read();
|
||
|
|
7238524.141998 | 0) | add_wait_queue() {
|
||
|
|
7238524.141998 | 0) 0.079 us | _raw_spin_lock_irqsave();
|
||
|
|
7238524.141999 | 0) 0.078 us | _raw_spin_unlock_irqrestore();
|
||
|
|
7238524.141999 | 0) 1.201 us | }
|
||
|
|
7238524.142000 | 0) 0.067 us | tty_hung_up_p();
|
||
|
|
7238524.142000 | 0) 0.078 us | n_tty_set_room();
|
||
|
|
7238524.142001 | 0) 0.079 us | up_read();
|
||
|
|
7238524.142001 | 0) | schedule_timeout() {
|
||
|
|
7238524.142002 | 0) | schedule() {
|
||
|
|
7238524.142002 | 0) | __schedule() {
|
||
|
|
7238524.142002 | 0) 0.076 us | rcu_note_context_switch();
|
||
|
|
7238524.142003 | 0) 0.080 us | _raw_spin_lock_irq();
|
||
|
|
7238524.142004 | 0) | deactivate_task() {
|
||
|
|
7238524.142004 | 0) | dequeue_task() {
|
||
|
|
7238524.142004 | 0) 0.178 us | update_rq_clock();
|
||
|
|
7238524.142005 | 0) | dequeue_task_fair() {
|
||
|
|
7238524.142005 | 0) | dequeue_entity() {
|
||
|
|
7238524.142005 | 0) | update_curr() {
|
||
|
|
7238524.142006 | 0) 0.263 us | cpuacct_charge();
|
||
|
|
7238524.142007 | 0) 0.965 us | }
|
||
|
|
7238524.142007 | 0) 0.075 us | update_cfs_rq_blocked_load();
|
||
|
|
7238524.142008 | 0) 0.065 us | clear_buddies();
|
||
|
|
7238524.142008 | 0) 0.084 us | account_entity_dequeue();
|
||
|
|
7238524.142009 | 0) | update_cfs_shares() {
|
||
|
|
7238524.142009 | 0) 0.115 us | update_curr();
|
||
|
|
7238524.142010 | 0) 0.084 us | account_entity_dequeue();
|
||
|
|
7238524.142010 | 0) 0.068 us | account_entity_enqueue();
|
||
|
|
7238524.142011 | 0) 1.754 us | }
|
||
|
|
7238524.142011 | 0) 5.580 us | }
|
||
|
|
7238524.142012 | 0) | dequeue_entity() {
|
||
|
|
7238524.142012 | 0) 0.089 us | update_curr();
|
||
|
|
7238524.142012 | 0) 0.101 us | update_cfs_rq_blocked_load();
|
||
|
|
7238524.142013 | 0) 0.076 us | clear_buddies();
|
||
|
|
7238524.142013 | 0) 0.078 us | account_entity_dequeue();
|
||
|
|
7238524.142014 | 0) 0.076 us | update_cfs_shares();
|
||
|
|
7238524.142015 | 0) 3.071 us | }
|
||
|
|
7238524.142015 | 0) 0.078 us | hrtick_update();
|
||
|
|
7238524.142016 | 0) 10.525 us | }
|
||
|
|
7238524.142016 | 0) 11.803 us | }
|
||
|
|
7238524.142016 | 0) 12.447 us | }
|
||
|
|
7238524.142017 | 0) | pick_next_task_fair() {
|
||
|
|
7238524.142017 | 0) 0.069 us | check_cfs_rq_runtime();
|
||
|
|
7238524.142017 | 0) | pick_next_entity() {
|
||
|
|
7238524.142018 | 0) 0.061 us | clear_buddies();
|
||
|
|
7238524.142018 | 0) 0.601 us | }
|
||
|
|
7238524.142019 | 0) | put_prev_entity() {
|
||
|
|
7238524.142019 | 0) 0.069 us | check_cfs_rq_runtime();
|
||
|
|
7238524.142019 | 0) 0.605 us | }
|
||
|
|
7238524.142020 | 0) | put_prev_entity() {
|
||
|
|
7238524.142020 | 0) 0.076 us | check_cfs_rq_runtime();
|
||
|
|
7238524.142020 | 0) 0.609 us | }
|
||
|
|
7238524.142021 | 0) | set_next_entity() {
|
||
|
|
7238524.142021 | 0) 0.088 us | update_stats_wait_end();
|
||
|
|
7238524.142022 | 0) 0.768 us | }
|
||
|
|
7238524.142022 | 0) 5.183 us | }
|
||
|
|
7238524.142023 | 0) 0.080 us | paravirt_start_context_switch();
|
||
|
|
7238524.142024 | 0) 0.076 us | xen_read_cr0();
|
||
|
|
7238524.142024 | 0) | xen_write_cr0() {
|
||
|
|
7238524.142025 | 0) 0.088 us | paravirt_get_lazy_mode();
|
||
|
|
7238524.142025 | 0) 0.096 us | __xen_mc_entry();
|
||
|
|
7238524.142026 | 0) 0.083 us | paravirt_get_lazy_mode();
|
||
|
|
7238524.142026 | 0) 1.802 us | }
|
||
|
|
7238524.142026 | 0) | xen_load_sp0() {
|
||
|
|
7238524.142027 | 0) 0.074 us | paravirt_get_lazy_mode();
|
||
|
|
7238524.142027 | 0) 0.098 us | __xen_mc_entry();
|
||
|
|
7238524.142028 | 0) 0.073 us | paravirt_get_lazy_mode();
|
||
|
|
7238524.142029 | 0) 2.289 us | }
|
||
|
|
7238524.142029 | 0) | xen_load_tls() {
|
||
|
|
7238524.142029 | 0) 0.073 us | paravirt_get_lazy_mode();
|
||
|
|
7238524.142030 | 0) 0.079 us | paravirt_get_lazy_mode();
|
||
|
|
7238524.142031 | 0) 0.135 us | load_TLS_descriptor();
|
||
|
|
7238524.142031 | 0) 0.082 us | load_TLS_descriptor();
|
||
|
|
7238524.142032 | 0) 0.091 us | load_TLS_descriptor();
|
||
|
|
7238524.142032 | 0) 0.081 us | paravirt_get_lazy_mode();
|
||
|
|
7238524.142033 | 0) 3.306 us | }
|
||
|
|
7238524.142033 | 0) | xen_end_context_switch() {
|
||
|
|
7238524.142033 | 0) 0.697 us | xen_mc_flush();
|
||
|
|
7238524.142034 | 0) 0.083 us | paravirt_end_context_switch();
|
||
|
|
7238524.142035 | 0) 1.876 us | }
|
||
|
|
7238524.269404 | 0) | finish_task_switch() {
|
||
|
|
7238524.269408 | 0) | xen_evtchn_do_upcall() {
|
||
|
|
7238524.269408 | 0) | irq_enter() {
|
||
|
|
7238524.269408 | 0) 0.132 us | rcu_irq_enter();
|
||
|
|
7238524.269409 | 0) 0.948 us | }
|
||
|
|
7238524.269409 | 0) 0.063 us | exit_idle();
|
||
|
|
7238524.269410 | 0) | __xen_evtchn_do_upcall() {
|
||
|
|
7238524.269410 | 0) | evtchn_2l_handle_events() {
|
||
|
|
7238524.269410 | 0) 0.057 us | irq_from_virq();
|
||
|
|
7238524.269411 | 0) | evtchn_from_irq() {
|
||
|
|
7238524.269411 | 0) | irq_get_irq_data() {
|
||
|
|
7238524.269411 | 0) 0.058 us | irq_to_desc();
|
||
|
|
7238524.269412 | 0) 0.579 us | }
|
||
|
|
7238524.269412 | 0) 0.898 us | }
|
||
|
|
7238524.269412 | 0) | get_evtchn_to_irq() {
|
||
|
|
7238524.269412 | 0) 0.049 us | evtchn_2l_max_channels();
|
||
|
|
7238524.269412 | 0) 0.390 us | }
|
||
|
|
7238524.269413 | 0) | generic_handle_irq() {
|
||
|
|
7238524.269413 | 0) 0.051 us | irq_to_desc();
|
||
|
|
7238524.269413 | 0) | handle_percpu_irq() {
|
||
|
|
7238524.269413 | 0) | ack_dynirq() {
|
||
|
|
7238524.269413 | 0) | evtchn_from_irq() {
|
||
|
|
7238524.269414 | 0) | irq_get_irq_data() {
|
||
|
|
7238524.269414 | 0) 0.057 us | irq_to_desc();
|
||
|
|
7238524.269414 | 0) 0.446 us | }
|
||
|
|
7238524.269414 | 0) 0.754 us | }
|
||
|
|
7238524.269414 | 0) 0.057 us | irq_move_irq();
|
||
|
|
7238524.269415 | 0) 0.057 us | evtchn_2l_clear_pending();
|
||
|
|
7238524.269415 | 0) 1.718 us | }
|
||
|
|
7238524.269415 | 0) | handle_irq_event_percpu() {
|
||
|
|
7238524.269416 | 0) | xen_irq_work_interrupt() {
|
||
|
|
7238524.269416 | 0) | irq_enter() {
|
||
|
|
7238524.269416 | 0) 0.059 us | rcu_irq_enter();
|
||
|
|
7238524.269416 | 0) 0.380 us | }
|
||
|
|
7238524.269417 | 0) | __wake_up() {
|
||
|
|
7238524.269417 | 0) 0.051 us | _raw_spin_lock_irqsave();
|
||
|
|
7238524.269417 | 0) | __wake_up_common() {
|
||
|
|
7238524.269417 | 0) | autoremove_wake_function() {
|
||
|
|
7238524.269418 | 0) | default_wake_function() {
|
||
|
|
7238524.269418 | 0) | try_to_wake_up() {
|
||
|
|
7238524.269418 | 0) 0.230 us | _raw_spin_lock_irqsave();
|
||
|
|
7238524.269419 | 0) 0.197 us | task_waking_fair();
|
||
|
|
7238524.269419 | 0) | select_task_rq_fair() {
|
||
|
|
7238524.269419 | 0) 0.050 us | source_load();
|
||
|
|
7238524.269420 | 0) 0.057 us | target_load();
|
||
|
|
7238524.269420 | 0) 0.065 us | idle_cpu();
|
||
|
|
7238524.269421 | 0) 0.055 us | cpus_share_cache();
|
||
|
|
7238524.269421 | 0) 0.076 us | idle_cpu();
|
||
|
|
7238524.269421 | 0) 2.041 us | }
|
||
|
|
7238524.269422 | 0) 0.050 us | _raw_spin_lock();
|
||
|
|
7238524.269422 | 0) | ttwu_do_activate.constprop.124() {
|
||
|
|
7238524.269422 | 0) | activate_task() {
|
||
|
|
7238524.269422 | 0) | enqueue_task() {
|
||
|
|
7238524.269422 | 0) 0.175 us | update_rq_clock();
|
||
|
|
7238524.269423 | 0) | enqueue_task_fair() {
|
||
|
|
7238524.269423 | 0) | enqueue_entity() {
|
||
|
|
7238524.269423 | 0) 0.065 us | update_curr();
|
||
|
|
7238524.269424 | 0) 0.070 us | __compute_runnable_contrib.part.51();
|
||
|
|
7238524.269424 | 0) 0.052 us | __update_entity_load_avg_contrib();
|
||
|
|
7238524.269424 | 0) 0.050 us | update_cfs_rq_blocked_load();
|
||
|
|
7238524.269425 | 0) 0.059 us | account_entity_enqueue();
|
||
|
|
7238524.269426 | 0) 0.134 us | update_cfs_shares();
|
||
|
|
7238524.269426 | 0) 0.055 us | place_entity();
|
||
|
|
7238524.269427 | 0) 0.083 us | __enqueue_entity();
|
||
|
|
7238524.269427 | 0) 4.026 us | }
|
||
|
|
7238524.269427 | 0) | enqueue_entity() {
|
||
|
|
7238524.269428 | 0) 0.065 us | update_curr();
|
||
|
|
7238524.269428 | 0) 0.051 us | update_cfs_rq_blocked_load();
|
||
|
|
7238524.269428 | 0) 0.058 us | account_entity_enqueue();
|
||
|
|
7238524.269429 | 0) 0.082 us | update_cfs_shares();
|
||
|
|
7238524.269429 | 0) 0.105 us | place_entity();
|
||
|
|
7238524.269429 | 0) 0.049 us | __enqueue_entity();
|
||
|
|
7238524.269430 | 0) 2.247 us | }
|
||
|
|
7238524.269430 | 0) 0.050 us | hrtick_update();
|
||
|
|
7238524.269430 | 0) 7.310 us | }
|
||
|
|
7238524.269430 | 0) 8.101 us | }
|
||
|
|
7238524.269431 | 0) 8.449 us | }
|
||
|
|
7238524.269431 | 0) | ttwu_do_wakeup() {
|
||
|
|
7238524.269431 | 0) | check_preempt_curr() {
|
||
|
|
7238524.269431 | 0) | resched_task() {
|
||
|
|
7238524.269431 | 0) | xen_smp_send_reschedule() {
|
||
|
|
7238524.269432 | 0) | xen_send_IPI_one() {
|
||
|
|
7238524.269432 | 0) | notify_remote_via_irq() {
|
||
|
|
7238524.269432 | 0) | evtchn_from_irq() {
|
||
|
|
7238524.269432 | 0) | irq_get_irq_data() {
|
||
|
|
7238524.269432 | 0) 0.051 us | irq_to_desc();
|
||
|
|
7238524.269433 | 0) 0.493 us | }
|
||
|
|
7238524.269433 | 0) 0.857 us | }
|
||
|
|
7238524.269434 | 0) 1.909 us | } /* notify_remote_via_irq */
|
||
|
|
7238524.269434 | 0) 2.288 us | }
|
||
|
|
7238524.269434 | 0) 2.655 us | }
|
||
|
|
7238524.269434 | 0) 3.127 us | }
|
||
|
|
7238524.269435 | 0) 3.590 us | }
|
||
|
|
7238524.269435 | 0) 4.506 us | }
|
||
|
|
7238524.269436 | 0) 13.594 us | }
|
||
|
|
7238524.269436 | 0) 0.070 us | _raw_spin_unlock();
|
||
|
|
7238524.269436 | 0) 0.163 us | ttwu_stat();
|
||
|
|
7238524.269437 | 0) 0.080 us | _raw_spin_unlock_irqrestore();
|
||
|
|
7238524.269438 | 0) 19.508 us | }
|
||
|
|
7238524.269438 | 0) 19.991 us | }
|
||
|
|
7238524.269438 | 0) 20.486 us | }
|
||
|
|
7238524.269438 | 0) 21.024 us | }
|
||
|
|
7238524.269438 | 0) 0.076 us | _raw_spin_unlock_irqrestore();
|
||
|
|
7238524.269439 | 0) 22.247 us | }
|
||
|
|
7238524.269439 | 0) | irq_exit() {
|
||
|
|
7238524.269439 | 0) 0.101 us | idle_cpu();
|
||
|
|
7238524.269440 | 0) 0.099 us | rcu_irq_exit();
|
||
|
|
7238524.269441 | 0) 1.207 us | }
|
||
|
|
7238524.269441 | 0) 25.035 us | }
|
||
|
|
7238524.269441 | 0) 0.131 us | add_interrupt_randomness();
|
||
|
|
7238524.269442 | 0) 0.076 us | note_interrupt();
|
||
|
|
7238524.269442 | 0) 26.909 us | }
|
||
|
|
7238524.269443 | 0) 29.377 us | }
|
||
|
|
7238524.269443 | 0) 30.139 us | }
|
||
|
|
7238524.269443 | 0) 32.759 us | }
|
||
|
|
7238524.269443 | 0) 33.204 us | }
|
||
|
|
7238524.269444 | 0) | irq_exit() {
|
||
|
|
7238524.269444 | 0) | __do_softirq() {
|
||
|
|
7238524.269444 | 0) 0.068 us | msecs_to_jiffies();
|
||
|
|
7238524.269445 | 0) | rcu_process_callbacks() {
|
||
|
|
7238524.269445 | 0) 0.070 us | note_gp_changes();
|
||
|
|
7238524.269445 | 0) 0.064 us | _raw_spin_lock_irqsave();
|
||
|
|
7238524.269446 | 0) 0.135 us | rcu_accelerate_cbs();
|
||
|
|
7238524.269447 | 0) | rcu_report_qs_rnp() {
|
||
|
|
7238524.269447 | 0) 0.061 us | _raw_spin_unlock_irqrestore();
|
||
|
|
7238524.269448 | 0) 0.779 us | }
|
||
|
|
7238524.269448 | 0) 0.081 us | cpu_needs_another_gp();
|
||
|
|
7238524.269449 | 0) | file_free_rcu() {
|
||
|
|
7238524.269449 | 0) 0.291 us | kmem_cache_free();
|
||
|
|
7238524.269450 | 0) 1.139 us | }
|
||
|
|
7238524.269451 | 0) | put_cred_rcu() {
|
||
|
|
7238524.269451 | 0) | security_cred_free() {
|
||
|
|
7238524.269452 | 0) | apparmor_cred_free() {
|
||
|
|
7238524.269453 | 0) | aa_free_task_context() {
|
||
|
|
7238524.269453 | 0) | kzfree() {
|
||
|
|
7238524.269454 | 0) 0.380 us | ksize();
|
||
|
|
7238524.269455 | 0) 0.147 us | kfree();
|
||
|
|
7238524.269455 | 0) 1.602 us | }
|
||
|
|
7238524.269455 | 0) 2.631 us | }
|
||
|
|
7238524.269456 | 0) 3.611 us | } /* apparmor_cred_free */
|
||
|
|
7238524.269456 | 0) 4.927 us | }
|
||
|
|
7238524.269457 | 0) 0.071 us | key_put();
|
||
|
|
7238524.269457 | 0) 0.071 us | key_put();
|
||
|
|
7238524.269458 | 0) 0.065 us | key_put();
|
||
|
|
7238524.269458 | 0) 0.066 us | key_put();
|
||
|
|
7238524.269459 | 0) 0.390 us | free_uid();
|
||
|
|
7238524.269460 | 0) 0.178 us | kmem_cache_free();
|
||
|
|
7238524.269460 | 0) 9.429 us | }
|
||
|
|
7238524.269461 | 0) 0.099 us | note_gp_changes();
|
||
|
|
7238524.269461 | 0) 0.080 us | cpu_needs_another_gp();
|
||
|
|
7238524.269462 | 0) 16.796 us | }
|
||
|
|
7238524.269462 | 0) 0.068 us | rcu_bh_qs();
|
||
|
|
7238524.269462 | 0) 0.066 us | __local_bh_enable();
|
||
|
|
7238524.269463 | 0) 18.770 us | }
|
||
|
|
7238524.269463 | 0) 0.073 us | idle_cpu();
|
||
|
|
7238524.269464 | 0) 0.088 us | rcu_irq_exit();
|
||
|
|
7238524.269464 | 0) 20.487 us | }
|
||
|
|
7238524.269465 | 0) 56.365 us | }
|
||
|
|
7238524.269465 | 0) 58.028 us | }
|
||
|
|
7238524.269466 | 0) 127463.5 us | }
|
||
|
|
7238524.269466 | 0) 127464.2 us | }
|
||
|
|
7238524.269467 | 0) 127465.0 us | }
|
||
|
|
7238524.269467 | 0) 0.095 us | down_read();
|
||
|
|
7238524.269468 | 0) | copy_from_read_buf() {
|
||
|
|
7238524.269469 | 0) | tty_audit_add_data() {
|
||
|
|
7238524.269469 | 0) 0.228 us | _raw_spin_lock_irqsave();
|
||
|
|
7238524.269470 | 0) 0.070 us | _raw_spin_unlock_irqrestore();
|
||
|
|
7238524.269471 | 0) 0.074 us | _raw_spin_lock_irqsave();
|
||
|
|
7238524.269471 | 0) 0.079 us | _raw_spin_unlock_irqrestore();
|
||
|
|
7238524.269472 | 0) 2.616 us | }
|
||
|
|
7238524.269472 | 0) 3.878 us | }
|
||
|
|
7238524.269473 | 0) 0.104 us | copy_from_read_buf();
|
||
|
|
7238524.269473 | 0) 0.074 us | n_tty_set_room();
|
||
|
|
7238524.269474 | 0) 0.067 us | n_tty_write_wakeup();
|
||
|
|
7238524.269474 | 0) | __wake_up() {
|
||
|
|
7238524.269475 | 0) 0.077 us | _raw_spin_lock_irqsave();
|
||
|
|
7238524.269475 | 0) | __wake_up_common() {
|
||
|
|
7238524.269476 | 0) 0.095 us | pollwake();
|
||
|
|
7238524.269476 | 0) 0.694 us | }
|
||
|
|
7238524.269476 | 0) 0.064 us | _raw_spin_unlock_irqrestore();
|
||
|
|
7238524.269477 | 0) 2.128 us | }
|
||
|
|
7238524.269477 | 0) 0.062 us | n_tty_set_room();
|
||
|
|
7238524.269477 | 0) 0.066 us | up_read();
|
||
|
|
7238524.269478 | 0) | remove_wait_queue() {
|
||
|
|
7238524.269478 | 0) 0.080 us | _raw_spin_lock_irqsave();
|
||
|
|
7238524.269479 | 0) 0.081 us | _raw_spin_unlock_irqrestore();
|
||
|
|
7238524.269480 | 0) 1.225 us | }
|
||
|
|
7238524.269480 | 0) 0.152 us | mutex_unlock();
|
||
|
|
7238524.269480 | 0) 127485.3 us | }
|
||
|
|
7238524.269481 | 0) | tty_ldisc_deref() {
|
||
|
|
7238524.269481 | 0) 0.081 us | ldsem_up_read();
|
||
|
|
7238524.269482 | 0) 0.655 us | }
|
||
|
|
7238524.269482 | 0) 0.089 us | get_seconds();
|
||
|
|
7238524.269483 | 0) 127490.1 us | }
|
||
|
|
7238524.269484 | 0) 0.287 us | __fsnotify_parent();
|
||
|
|
7238524.269484 | 0) 0.183 us | fsnotify();
|
||
|
|
7238524.269485 | 0) 127496.2 us | }
|
||
|
|
7238524.269559 | 0) | vfs_read() {
|
||
|
|
7238524.269559 | 0) | rw_verify_area() {
|
||
|
|
7238524.269560 | 0) | security_file_permission() {
|
||
|
|
7238524.269560 | 0) | apparmor_file_permission() {
|
||
|
|
7238524.269561 | 0) 0.164 us | common_file_perm();
|
||
|
|
7238524.269561 | 0) 0.831 us | }
|
||
|
|
7238524.269562 | 0) 0.078 us | __fsnotify_parent();
|
||
|
|
7238524.269562 | 0) 0.080 us | fsnotify();
|
||
|
|
7238524.269563 | 0) 2.765 us | }
|
||
|
|
7238524.269563 | 0) 3.490 us | }
|
||
|
|
7238524.269564 | 0) | tty_read() {
|
||
|
|
7238524.269564 | 0) 0.066 us | tty_paranoia_check();
|
||
|
|
7238524.269564 | 0) | tty_ldisc_ref_wait() {
|
||
|
|
7238524.269565 | 0) 0.085 us | ldsem_down_read();
|
||
|
|
7238524.269565 | 0) 0.656 us | }
|
||
|
|
7238524.269566 | 0) | n_tty_read() {
|
||
|
|
7238524.269566 | 0) 0.078 us | _raw_spin_lock_irq();
|
||
|
|
7238524.269567 | 0) 0.118 us | mutex_lock_interruptible();
|
||
|
|
7238524.269567 | 0) 0.078 us | down_read();
|
||
|
|
7238524.269568 | 0) | add_wait_queue() {
|
||
|
|
7238524.269568 | 0) 0.089 us | _raw_spin_lock_irqsave();
|
||
|
|
7238524.269569 | 0) 0.082 us | _raw_spin_unlock_irqrestore();
|
||
|
|
7238524.269569 | 0) 1.164 us | }
|
||
|
|
7238524.269570 | 0) 0.073 us | tty_hung_up_p();
|
||
|
|
7238524.269570 | 0) 0.076 us | n_tty_set_room();
|
||
|
|
7238524.269571 | 0) 0.078 us | up_read();
|
||
|
|
7238524.269571 | 0) | schedule_timeout() {
|
||
|
|
7238524.269572 | 0) | schedule() {
|
||
|
|
7238524.269572 | 0) | __schedule() {
|
||
|
|
7238524.269572 | 0) 0.078 us | rcu_note_context_switch();
|
||
|
|
7238524.269573 | 0) 0.085 us | _raw_spin_lock_irq();
|
||
|
|
7238524.269574 | 0) | deactivate_task() {
|
||
|
|
7238524.269574 | 0) | dequeue_task() {
|
||
|
|
7238524.269574 | 0) 0.185 us | update_rq_clock();
|
||
|
|
7238524.269575 | 0) | dequeue_task_fair() {
|
||
|
|
7238524.269575 | 0) | dequeue_entity() {
|
||
|
|
7238524.269575 | 0) | update_curr() {
|
||
|
|
7238524.269576 | 0) 0.206 us | cpuacct_charge();
|
||
|
|
7238524.269577 | 0) 0.937 us | }
|
||
|
|
7238524.269577 | 0) 0.084 us | __update_entity_load_avg_contrib();
|
||
|
|
7238524.269577 | 0) 0.077 us | update_cfs_rq_blocked_load();
|
||
|
|
7238524.269578 | 0) 0.075 us | clear_buddies();
|
||
|
|
7238524.269579 | 0) 0.096 us | account_entity_dequeue();
|
||
|
|
7238524.269579 | 0) | update_cfs_shares() {
|
||
|
|
7238524.269580 | 0) 0.095 us | update_curr();
|
||
|
|
7238524.269580 | 0) 0.104 us | account_entity_dequeue();
|
||
|
|
7238524.269581 | 0) 0.076 us | account_entity_enqueue();
|
||
|
|
7238524.269581 | 0) 1.898 us | }
|
||
|
|
7238524.269582 | 0) 6.120 us | }
|
||
|
|
7238524.269582 | 0) | dequeue_entity() {
|
||
|
|
7238524.269582 | 0) 0.093 us | update_curr();
|
||
|
|
7238524.269583 | 0) 0.116 us | __update_entity_load_avg_contrib();
|
||
|
|
7238524.269583 | 0) 0.085 us | update_cfs_rq_blocked_load();
|
||
|
|
7238524.269584 | 0) 0.067 us | clear_buddies();
|
||
|
|
7238524.269585 | 0) 0.082 us | account_entity_dequeue();
|
||
|
|
7238524.269585 | 0) 0.097 us | update_cfs_shares();
|
||
|
|
7238524.269586 | 0) 3.833 us | }
|
||
|
|
7238524.269586 | 0) 0.070 us | hrtick_update();
|
||
|
|
7238524.269587 | 0) 11.677 us | }
|
||
|
|
7238524.269587 | 0) 13.001 us | }
|
||
|
|
7238524.269587 | 0) 13.516 us | }
|
||
|
|
7238524.269588 | 0) | pick_next_task_fair() {
|
||
|
|
7238524.269588 | 0) 0.072 us | check_cfs_rq_runtime();
|
||
|
|
7238524.269588 | 0) | pick_next_entity() {
|
||
|
|
7238524.269589 | 0) 0.080 us | clear_buddies();
|
||
|
|
7238524.269589 | 0) 0.675 us | }
|
||
|
|
7238524.269590 | 0) | put_prev_entity() {
|
||
|
|
7238524.269590 | 0) 0.071 us | check_cfs_rq_runtime();
|
||
|
|
7238524.269591 | 0) 0.543 us | }
|
||
|
|
7238524.269591 | 0) | put_prev_entity() {
|
||
|
|
7238524.269591 | 0) 0.066 us | check_cfs_rq_runtime();
|
||
|
|
7238524.269592 | 0) 0.658 us | }
|
||
|
|
7238524.269592 | 0) | set_next_entity() {
|
||
|
|
7238524.269593 | 0) 0.082 us | update_stats_wait_end();
|
||
|
|
7238524.269593 | 0) 0.844 us | }
|
||
|
|
7238524.269594 | 0) 5.970 us | }
|
||
|
|
7238524.269594 | 0) 0.076 us | paravirt_start_context_switch();
|
||
|
|
7238524.269595 | 0) 0.074 us | xen_read_cr0();
|
||
|
|
7238524.269596 | 0) | xen_write_cr0() {
|
||
|
|
7238524.269597 | 0) 0.081 us | paravirt_get_lazy_mode();
|
||
|
|
7238524.269597 | 0) 0.086 us | __xen_mc_entry();
|
||
|
|
7238524.269598 | 0) 0.070 us | paravirt_get_lazy_mode();
|
||
|
|
7238524.269598 | 0) 1.739 us | }
|
||
|
|
7238524.269598 | 0) | xen_load_sp0() {
|
||
|
|
7238524.269599 | 0) 0.078 us | paravirt_get_lazy_mode();
|
||
|
|
7238524.269599 | 0) 0.078 us | __xen_mc_entry();
|
||
|
|
7238524.269600 | 0) 0.069 us | paravirt_get_lazy_mode();
|
||
|
|
7238524.269600 | 0) 1.568 us | }
|
||
|
|
7238524.269601 | 0) | xen_load_tls() {
|
||
|
|
7238524.269601 | 0) 0.068 us | paravirt_get_lazy_mode();
|
||
|
|
7238524.269601 | 0) 0.068 us | paravirt_get_lazy_mode();
|
||
|
|
7238524.269602 | 0) 0.078 us | load_TLS_descriptor();
|
||
|
|
7238524.269602 | 0) 0.071 us | load_TLS_descriptor();
|
||
|
|
7238524.269603 | 0) 0.073 us | load_TLS_descriptor();
|
||
|
|
7238524.269603 | 0) 0.063 us | paravirt_get_lazy_mode();
|
||
|
|
7238524.269604 | 0) 3.025 us | }
|
||
|
|
7238524.269604 | 0) | xen_end_context_switch() {
|
||
|
|
7238524.269604 | 0) 0.646 us | xen_mc_flush();
|
||
|
|
7238524.269605 | 0) 0.087 us | paravirt_end_context_switch();
|
||
|
|
7238524.269606 | 0) 1.604 us | }
|
||
|
|
^C
|
||
|
|
Ending tracing...
|
||
|
|
|
||
|
|
If you read through the durations carefully, you can see that the shell begins
|
||
|
|
by completing a 19 second read (time between commands), then has a series of
|
||
|
|
100 to 200 ms reads (inter-keystroke latency).
|
||
|
|
|
||
|
|
The function times printed are inclusive of their children.
|