<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/kernel/trace/Makefile, branch v2.6.27.23</title>
<subtitle>Linux kernel source tree</subtitle>
<id>https://git.amat.us/linux/atom/kernel/trace/Makefile?h=v2.6.27.23</id>
<link rel='self' href='https://git.amat.us/linux/atom/kernel/trace/Makefile?h=v2.6.27.23'/>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/'/>
<updated>2008-07-10T09:43:08Z</updated>
<entry>
<title>Merge branch 'tracing/sysprof' into auto-ftrace-next</title>
<updated>2008-07-10T09:43:08Z</updated>
<author>
<name>Ingo Molnar</name>
<email>mingo@elte.hu</email>
</author>
<published>2008-07-10T09:43:08Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=ec1bb60bbff0386c3ec25360e7a8c72f467a6ff1'/>
<id>urn:sha1:ec1bb60bbff0386c3ec25360e7a8c72f467a6ff1</id>
<content type='text'>
</content>
</entry>
<entry>
<title>ftrace: add mmiotrace plugin</title>
<updated>2008-05-24T09:22:43Z</updated>
<author>
<name>Pekka Paalanen</name>
<email>pq@iki.fi</email>
</author>
<published>2008-05-12T19:20:57Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=f984b51e0779a6dd30feedc41404013ca54e5d05'/>
<id>urn:sha1:f984b51e0779a6dd30feedc41404013ca54e5d05</id>
<content type='text'>
On Sat, 22 Mar 2008 13:07:47 +0100
Ingo Molnar &lt;mingo@elte.hu&gt; wrote:

&gt; &gt; &gt; i'd suggest the following: pull x86.git and sched-devel.git into a
&gt; &gt; &gt; single tree [the two will combine without rejects]. Then try to add a
&gt; &gt; &gt; kernel/tracing/trace_mmiotrace.c ftrace plugin. The trace_sysprof.c
&gt; &gt; &gt; plugin might be a good example.
&gt; &gt;
&gt; &gt; I did this and now I have mmiotrace enabled/disabled via the tracing
&gt; &gt; framework (what do we call this, since ftrace is one of the tracers?).
&gt;
&gt; cool! could you send the patches for that? (even if they are not fully
&gt; functional yet)

Patch attached in the end. Nice to see how much code disappeared. I tried
to mark all the features I had to break with XXX-comments.

Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
</content>
</entry>
<entry>
<title>ftrace: add sysprof plugin</title>
<updated>2008-05-23T21:39:00Z</updated>
<author>
<name>Ingo Molnar</name>
<email>mingo@elte.hu</email>
</author>
<published>2008-05-12T19:20:47Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=f06c38103ea9dbca27c3f4d77f444ddefb5477cd'/>
<id>urn:sha1:f06c38103ea9dbca27c3f4d77f444ddefb5477cd</id>
<content type='text'>
very first baby version.

Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
</content>
</entry>
<entry>
<title>ftrace: fix dynamic ftrace selftest</title>
<updated>2008-05-23T19:13:23Z</updated>
<author>
<name>Steven Rostedt</name>
<email>rostedt@goodmis.org</email>
</author>
<published>2008-05-12T19:20:54Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=d05cdb25d80f06f77aa6bddb53cd1390d4d91a0b'/>
<id>urn:sha1:d05cdb25d80f06f77aa6bddb53cd1390d4d91a0b</id>
<content type='text'>
With the adding of the configuration changes in the Makefile to prevent
tracing of functions in the ftrace code, all tracing of all the ftrace
code has been removed. Unfortunately, one of the selftests, relied on
a function to be traced. With the new change, the function was no longer
traced and the test failed.

This patch separates out the test function into its own file so that
we can add the "-pg" flag to the compilation of that function and the
adding of the mcount call to that function.

Signed-off-by: Steven Rostedt &lt;srostedt@redhat.com&gt;
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
</content>
</entry>
<entry>
<title>ftrace: disable -pg for the tracer itself</title>
<updated>2008-05-23T18:56:53Z</updated>
<author>
<name>Ingo Molnar</name>
<email>mingo@elte.hu</email>
</author>
<published>2008-05-12T19:20:51Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=b53dde9d34f2df396540988ebc65c33400f57b04'/>
<id>urn:sha1:b53dde9d34f2df396540988ebc65c33400f57b04</id>
<content type='text'>
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
</content>
</entry>
<entry>
<title>ftrace: trace preempt off critical timings</title>
<updated>2008-05-23T18:32:54Z</updated>
<author>
<name>Steven Rostedt</name>
<email>srostedt@redhat.com</email>
</author>
<published>2008-05-12T19:20:42Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=6cd8a4bb2f97527a9ceb30bc77ea4e959c6a95e3'/>
<id>urn:sha1:6cd8a4bb2f97527a9ceb30bc77ea4e959c6a95e3</id>
<content type='text'>
Add preempt off timings. A lot of kernel core code is taken from the RT patch
latency trace that was written by Ingo Molnar.

This adds "preemptoff" and "preemptirqsoff" to /debugfs/tracing/available_tracers

Now instead of just tracing irqs off, preemption off can be selected
to be recorded.

When this is selected, it shares the same files as irqs off timings.
One can either trace preemption off, irqs off, or one or the other off.

By echoing "preemptoff" into /debugfs/tracing/current_tracer, recording
of preempt off only is performed. "irqsoff" will only record the time
irqs are disabled, but "preemptirqsoff" will take the total time irqs
or preemption are disabled. Runtime switching of these options is now
supported by simpling echoing in the appropriate trace name into
/debugfs/tracing/current_tracer.

Signed-off-by: Steven Rostedt &lt;srostedt@redhat.com&gt;
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
</content>
</entry>
<entry>
<title>ftrace: trace irq disabled critical timings</title>
<updated>2008-05-23T18:32:46Z</updated>
<author>
<name>Steven Rostedt</name>
<email>srostedt@redhat.com</email>
</author>
<published>2008-05-12T19:20:42Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=81d68a96a39844853b37f20cc8282d9b65b78ef3'/>
<id>urn:sha1:81d68a96a39844853b37f20cc8282d9b65b78ef3</id>
<content type='text'>
This patch adds latency tracing for critical timings
(how long interrupts are disabled for).

 "irqsoff" is added to /debugfs/tracing/available_tracers

Note:
  tracing_max_latency
    also holds the max latency for irqsoff (in usecs).
   (default to large number so one must start latency tracing)

  tracing_thresh
    threshold (in usecs) to always print out if irqs off
    is detected to be longer than stated here.
    If irq_thresh is non-zero, then max_irq_latency
    is ignored.

Here's an example of a trace with ftrace_enabled = 0

=======
preemption latency trace v1.1.5 on 2.6.24-rc7
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
--------------------------------------------------------------------
 latency: 100 us, #3/3, CPU#1 | (M:rt VP:0, KP:0, SP:0 HP:0 #P:2)
    -----------------
    | task: swapper-0 (uid:0 nice:0 policy:0 rt_prio:0)
    -----------------
 =&gt; started at: _spin_lock_irqsave+0x2a/0xb7
 =&gt; ended at:   _spin_unlock_irqrestore+0x32/0x5f

                 _------=&gt; CPU#
                / _-----=&gt; irqs-off
               | / _----=&gt; need-resched
               || / _---=&gt; hardirq/softirq
               ||| / _--=&gt; preempt-depth
               |||| /
               |||||     delay
   cmd     pid ||||| time  |   caller
      \   /    |||||   \   |   /
 swapper-0     1d.s3    0us+: _spin_lock_irqsave+0x2a/0xb7 (e1000_update_stats+0x47/0x64c [e1000])
 swapper-0     1d.s3  100us : _spin_unlock_irqrestore+0x32/0x5f (e1000_update_stats+0x641/0x64c [e1000])
 swapper-0     1d.s3  100us : trace_hardirqs_on_caller+0x75/0x89 (_spin_unlock_irqrestore+0x32/0x5f)

vim:ft=help
=======

And this is a trace with ftrace_enabled == 1

=======
preemption latency trace v1.1.5 on 2.6.24-rc7
--------------------------------------------------------------------
 latency: 102 us, #12/12, CPU#1 | (M:rt VP:0, KP:0, SP:0 HP:0 #P:2)
    -----------------
    | task: swapper-0 (uid:0 nice:0 policy:0 rt_prio:0)
    -----------------
 =&gt; started at: _spin_lock_irqsave+0x2a/0xb7
 =&gt; ended at:   _spin_unlock_irqrestore+0x32/0x5f

                 _------=&gt; CPU#
                / _-----=&gt; irqs-off
               | / _----=&gt; need-resched
               || / _---=&gt; hardirq/softirq
               ||| / _--=&gt; preempt-depth
               |||| /
               |||||     delay
   cmd     pid ||||| time  |   caller
      \   /    |||||   \   |   /
 swapper-0     1dNs3    0us+: _spin_lock_irqsave+0x2a/0xb7 (e1000_update_stats+0x47/0x64c [e1000])
 swapper-0     1dNs3   46us : e1000_read_phy_reg+0x16/0x225 [e1000] (e1000_update_stats+0x5e2/0x64c [e1000])
 swapper-0     1dNs3   46us : e1000_swfw_sync_acquire+0x10/0x99 [e1000] (e1000_read_phy_reg+0x49/0x225 [e1000])
 swapper-0     1dNs3   46us : e1000_get_hw_eeprom_semaphore+0x12/0xa6 [e1000] (e1000_swfw_sync_acquire+0x36/0x99 [e1000])
 swapper-0     1dNs3   47us : __const_udelay+0x9/0x47 (e1000_read_phy_reg+0x116/0x225 [e1000])
 swapper-0     1dNs3   47us+: __delay+0x9/0x50 (__const_udelay+0x45/0x47)
 swapper-0     1dNs3   97us : preempt_schedule+0xc/0x84 (__delay+0x4e/0x50)
 swapper-0     1dNs3   98us : e1000_swfw_sync_release+0xc/0x55 [e1000] (e1000_read_phy_reg+0x211/0x225 [e1000])
 swapper-0     1dNs3   99us+: e1000_put_hw_eeprom_semaphore+0x9/0x35 [e1000] (e1000_swfw_sync_release+0x50/0x55 [e1000])
 swapper-0     1dNs3  101us : _spin_unlock_irqrestore+0xe/0x5f (e1000_update_stats+0x641/0x64c [e1000])
 swapper-0     1dNs3  102us : _spin_unlock_irqrestore+0x32/0x5f (e1000_update_stats+0x641/0x64c [e1000])
 swapper-0     1dNs3  102us : trace_hardirqs_on_caller+0x75/0x89 (_spin_unlock_irqrestore+0x32/0x5f)

vim:ft=help
=======

Signed-off-by: Steven Rostedt &lt;srostedt@redhat.com&gt;
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
</content>
</entry>
<entry>
<title>ftrace: tracer for scheduler wakeup latency</title>
<updated>2008-05-23T18:32:36Z</updated>
<author>
<name>Steven Rostedt</name>
<email>srostedt@redhat.com</email>
</author>
<published>2008-05-12T19:20:42Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=352ad25aa4a189c667cb2af333948d34692a2d27'/>
<id>urn:sha1:352ad25aa4a189c667cb2af333948d34692a2d27</id>
<content type='text'>
This patch adds the tracer that tracks the wakeup latency of the
highest priority waking task.

  "wakeup" is added to /debugfs/tracing/available_tracers

Also added to /debugfs/tracing

  tracing_max_latency
     holds the current max latency for the wakeup

  wakeup_thresh
     if set to other than zero, a log will be recorded
     for every wakeup that takes longer than the number
     entered in here (usecs for all counters)
     (deletes previous trace)

Examples:

  (with ftrace_enabled = 0)

============
preemption latency trace v1.1.5 on 2.6.24-rc8
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
--------------------------------------------------------------------
 latency: 26 us, #2/2, CPU#1 | (M:rt VP:0, KP:0, SP:0 HP:0 #P:2)
    -----------------
    | task: migration/0-3 (uid:0 nice:-5 policy:1 rt_prio:99)
    -----------------

                 _------=&gt; CPU#
                / _-----=&gt; irqs-off
               | / _----=&gt; need-resched
               || / _---=&gt; hardirq/softirq
               ||| / _--=&gt; preempt-depth
               |||| /
               |||||     delay
   cmd     pid ||||| time  |   caller
      \   /    |||||   \   |   /
   quilt-8551  0d..3    0us+: wake_up_process+0x15/0x17 &lt;ffffffff80233e80&gt; (sched_exec+0xc9/0x100 &lt;ffffffff80235343&gt;)
   quilt-8551  0d..4   26us : sched_switch_callback+0x73/0x81 &lt;ffffffff80338d2f&gt; (schedule+0x483/0x6d5 &lt;ffffffff8048b3ee&gt;)

vim:ft=help
============

  (with ftrace_enabled = 1)

============
preemption latency trace v1.1.5 on 2.6.24-rc8
--------------------------------------------------------------------
 latency: 36 us, #45/45, CPU#0 | (M:rt VP:0, KP:0, SP:0 HP:0 #P:2)
    -----------------
    | task: migration/1-5 (uid:0 nice:-5 policy:1 rt_prio:99)
    -----------------

                 _------=&gt; CPU#
                / _-----=&gt; irqs-off
               | / _----=&gt; need-resched
               || / _---=&gt; hardirq/softirq
               ||| / _--=&gt; preempt-depth
               |||| /
               |||||     delay
   cmd     pid ||||| time  |   caller
      \   /    |||||   \   |   /
    bash-10653 1d..3    0us : wake_up_process+0x15/0x17 &lt;ffffffff80233e80&gt; (sched_exec+0xc9/0x100 &lt;ffffffff80235343&gt;)
    bash-10653 1d..3    1us : try_to_wake_up+0x271/0x2e7 &lt;ffffffff80233dcf&gt; (sub_preempt_count+0xc/0x7a &lt;ffffffff8023309e&gt;)
    bash-10653 1d..2    2us : try_to_wake_up+0x296/0x2e7 &lt;ffffffff80233df4&gt; (update_rq_clock+0x9/0x20 &lt;ffffffff802303f3&gt;)
    bash-10653 1d..2    2us : update_rq_clock+0x1e/0x20 &lt;ffffffff80230408&gt; (__update_rq_clock+0xc/0x90 &lt;ffffffff80230366&gt;)
    bash-10653 1d..2    3us : __update_rq_clock+0x1b/0x90 &lt;ffffffff80230375&gt; (sched_clock+0x9/0x29 &lt;ffffffff80214529&gt;)
    bash-10653 1d..2    4us : try_to_wake_up+0x2a6/0x2e7 &lt;ffffffff80233e04&gt; (activate_task+0xc/0x3f &lt;ffffffff8022ffca&gt;)
    bash-10653 1d..2    4us : activate_task+0x2d/0x3f &lt;ffffffff8022ffeb&gt; (enqueue_task+0xe/0x66 &lt;ffffffff8022ff66&gt;)
    bash-10653 1d..2    5us : enqueue_task+0x5b/0x66 &lt;ffffffff8022ffb3&gt; (enqueue_task_rt+0x9/0x3c &lt;ffffffff80233351&gt;)
    bash-10653 1d..2    6us : try_to_wake_up+0x2ba/0x2e7 &lt;ffffffff80233e18&gt; (check_preempt_wakeup+0x12/0x99 &lt;ffffffff80234f84&gt;)
[...]
    bash-10653 1d..5   33us : tracing_record_cmdline+0xcf/0xd4 &lt;ffffffff80338aad&gt; (_spin_unlock+0x9/0x33 &lt;ffffffff8048d3ec&gt;)
    bash-10653 1d..5   34us : _spin_unlock+0x19/0x33 &lt;ffffffff8048d3fc&gt; (sub_preempt_count+0xc/0x7a &lt;ffffffff8023309e&gt;)
    bash-10653 1d..4   35us : wakeup_sched_switch+0x65/0x2ff &lt;ffffffff80339f66&gt; (_spin_lock_irqsave+0xc/0xa9 &lt;ffffffff8048d08b&gt;)
    bash-10653 1d..4   35us : _spin_lock_irqsave+0x19/0xa9 &lt;ffffffff8048d098&gt; (add_preempt_count+0xe/0x77 &lt;ffffffff8023311a&gt;)
    bash-10653 1d..4   36us : sched_switch_callback+0x73/0x81 &lt;ffffffff80338d2f&gt; (schedule+0x483/0x6d5 &lt;ffffffff8048b3ee&gt;)

vim:ft=help
============

The [...] was added here to not waste your email box space.

Signed-off-by: Steven Rostedt &lt;srostedt@redhat.com&gt;
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
</content>
</entry>
<entry>
<title>ftrace: add tracing of context switches</title>
<updated>2008-05-23T18:32:27Z</updated>
<author>
<name>Steven Rostedt</name>
<email>srostedt@redhat.com</email>
</author>
<published>2008-05-12T19:20:42Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=35e8e302e5d6e32675df2fc1dd3a53dfa6630dc1'/>
<id>urn:sha1:35e8e302e5d6e32675df2fc1dd3a53dfa6630dc1</id>
<content type='text'>
This patch adds context switch tracing, of the format of:

                  _------=&gt; CPU#
                 / _-----=&gt; irqs-off
                | / _----=&gt; need-resched
                || / _---=&gt; hardirq/softirq
                ||| / _--=&gt; preempt-depth
                |||| /
                |||||     delay
    cmd     pid ||||| time  |      pid:prio:state
       \   /    |||||   \   |      /
  swapper-0     1d..3    137us+:  0:140:R --&gt; 2912:120
     sshd-2912  1d..3    216us+:  2912:120:S --&gt; 0:140
  swapper-0     1d..3    261us+:  0:140:R --&gt; 2912:120
     bash-2920  0d..3    267us+:  2920:120:S --&gt; 0:140
     sshd-2912  1d..3    330us!:  2912:120:S --&gt; 0:140
  swapper-0     1d..3   2389us+:  0:140:R --&gt; 2847:120
 yum-upda-2847  1d..3   2411us!:  2847:120:S --&gt; 0:140
  swapper-0     0d..3  11089us+:  0:140:R --&gt; 3139:120
 gdm-bina-3139  0d..3  11113us!:  3139:120:S --&gt; 0:140
  swapper-0     1d..3 102328us+:  0:140:R --&gt; 2847:120
 yum-upda-2847  1d..3 102348us!:  2847:120:S --&gt; 0:140

 "sched_switch" is added to /debugfs/tracing/available_tracers

[ Eugene Teo &lt;eugeneteo@kernel.sg: remove unused tracing_sched_switch_enabled ]

Signed-off-by: Steven Rostedt &lt;srostedt@redhat.com&gt;
Cc: Mathieu Desnoyers &lt;mathieu.desnoyers@polymtl.ca&gt;
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
</content>
</entry>
<entry>
<title>ftrace: function tracer</title>
<updated>2008-05-23T18:32:13Z</updated>
<author>
<name>Steven Rostedt</name>
<email>srostedt@redhat.com</email>
</author>
<published>2008-05-12T19:20:42Z</published>
<link rel='alternate' type='text/html' href='https://git.amat.us/linux/commit/?id=1b29b01887e6032dcaf818c14999c7a39593b4e7'/>
<id>urn:sha1:1b29b01887e6032dcaf818c14999c7a39593b4e7</id>
<content type='text'>
This is a simple trace that uses the ftrace infrastructure. It is
designed to be fast and small, and easy to use. It is useful to
record things that happen over a very short period of time, and
not to analyze the system in general.

 Updates:

  available_tracers
     "function" is added to this file.

  current_tracer
    To enable the function tracer:

      echo function &gt; /debugfs/tracing/current_tracer

     To disable the tracer:

       echo disable &gt; /debugfs/tracing/current_tracer

The output of the function_trace file is as follows

  "echo noverbose &gt; /debugfs/tracing/iter_ctrl"

preemption latency trace v1.1.5 on 2.6.24-rc7-tst
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
--------------------------------------------------------------------
 latency: 0 us, #419428/4361791, CPU#1 | (M:desktop VP:0, KP:0, SP:0 HP:0 #P:4)
    -----------------
    | task: -0 (uid:0 nice:0 policy:0 rt_prio:0)
    -----------------

                 _------=&gt; CPU#
                / _-----=&gt; irqs-off
               | / _----=&gt; need-resched
               || / _---=&gt; hardirq/softirq
               ||| / _--=&gt; preempt-depth
               |||| /
               |||||     delay
   cmd     pid ||||| time  |   caller
      \   /    |||||   \   |   /
 swapper-0     0d.h. 1595128us+: set_normalized_timespec+0x8/0x2d &lt;c043841d&gt; (ktime_get_ts+0x4a/0x4e &lt;c04499d4&gt;)
 swapper-0     0d.h. 1595131us+: _spin_lock+0x8/0x18 &lt;c0630690&gt; (hrtimer_interrupt+0x6e/0x1b0 &lt;c0449c56&gt;)

Or with verbose turned on:

  "echo verbose &gt; /debugfs/tracing/iter_ctrl"

preemption latency trace v1.1.5 on 2.6.24-rc7-tst
--------------------------------------------------------------------
 latency: 0 us, #419428/4361791, CPU#1 | (M:desktop VP:0, KP:0, SP:0 HP:0 #P:4)
    -----------------
    | task: -0 (uid:0 nice:0 policy:0 rt_prio:0)
    -----------------

         swapper     0 0 9 00000000 00000000 [f3675f41] 1595.128ms (+0.003ms): set_normalized_timespec+0x8/0x2d &lt;c043841d&gt; (ktime_get_ts+0x4a/0x4e &lt;c04499d4&gt;)
         swapper     0 0 9 00000000 00000001 [f3675f45] 1595.131ms (+0.003ms): _spin_lock+0x8/0x18 &lt;c0630690&gt; (hrtimer_interrupt+0x6e/0x1b0 &lt;c0449c56&gt;)
         swapper     0 0 9 00000000 00000002 [f3675f48] 1595.135ms (+0.003ms): _spin_lock+0x8/0x18 &lt;c0630690&gt; (hrtimer_interrupt+0x6e/0x1b0 &lt;c0449c56&gt;)

The "trace" file is not affected by the verbose mode, but is by the symonly.

 echo "nosymonly" &gt; /debugfs/tracing/iter_ctrl

tracer:
[   81.479967] CPU 0: bash:3154 register_ftrace_function+0x5f/0x66 &lt;ffffffff80337a4d&gt; &lt;-- _spin_unlock_irqrestore+0xe/0x5a &lt;ffffffff8048cc8f&gt;
[   81.479967] CPU 0: bash:3154 _spin_unlock_irqrestore+0x3e/0x5a &lt;ffffffff8048ccbf&gt; &lt;-- sub_preempt_count+0xc/0x7a &lt;ffffffff80233d7b&gt;
[   81.479968] CPU 0: bash:3154 sub_preempt_count+0x30/0x7a &lt;ffffffff80233d9f&gt; &lt;-- in_lock_functions+0x9/0x24 &lt;ffffffff8025a75d&gt;
[   81.479968] CPU 0: bash:3154 vfs_write+0x11d/0x155 &lt;ffffffff8029a043&gt; &lt;-- dnotify_parent+0x12/0x78 &lt;ffffffff802d54fb&gt;
[   81.479968] CPU 0: bash:3154 dnotify_parent+0x2d/0x78 &lt;ffffffff802d5516&gt; &lt;-- _spin_lock+0xe/0x70 &lt;ffffffff8048c910&gt;
[   81.479969] CPU 0: bash:3154 _spin_lock+0x1b/0x70 &lt;ffffffff8048c91d&gt; &lt;-- add_preempt_count+0xe/0x77 &lt;ffffffff80233df7&gt;
[   81.479969] CPU 0: bash:3154 add_preempt_count+0x3e/0x77 &lt;ffffffff80233e27&gt; &lt;-- in_lock_functions+0x9/0x24 &lt;ffffffff8025a75d&gt;

 echo "symonly" &gt; /debugfs/tracing/iter_ctrl

tracer:
[   81.479913] CPU 0: bash:3154 register_ftrace_function+0x5f/0x66 &lt;-- _spin_unlock_irqrestore+0xe/0x5a
[   81.479913] CPU 0: bash:3154 _spin_unlock_irqrestore+0x3e/0x5a &lt;-- sub_preempt_count+0xc/0x7a
[   81.479913] CPU 0: bash:3154 sub_preempt_count+0x30/0x7a &lt;-- in_lock_functions+0x9/0x24
[   81.479914] CPU 0: bash:3154 vfs_write+0x11d/0x155 &lt;-- dnotify_parent+0x12/0x78
[   81.479914] CPU 0: bash:3154 dnotify_parent+0x2d/0x78 &lt;-- _spin_lock+0xe/0x70
[   81.479914] CPU 0: bash:3154 _spin_lock+0x1b/0x70 &lt;-- add_preempt_count+0xe/0x77
[   81.479914] CPU 0: bash:3154 add_preempt_count+0x3e/0x77 &lt;-- in_lock_functions+0x9/0x24

Signed-off-by: Steven Rostedt &lt;srostedt@redhat.com&gt;
Signed-off-by: Arnaldo Carvalho de Melo &lt;acme@ghostprotocols.net&gt;
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
Signed-off-by: Thomas Gleixner &lt;tglx@linutronix.de&gt;
</content>
</entry>
</feed>
