<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux-toradex.git/kernel/trace, branch tegra-9.12.11</title>
<subtitle>Linux kernel for Apalis and Colibri modules</subtitle>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/'/>
<entry>
<title>tracing: limit the number of loops the ring buffer self test can make</title>
<updated>2009-02-19T03:50:01+00:00</updated>
<author>
<name>Steven Rostedt</name>
<email>srostedt@redhat.com</email>
</author>
<published>2009-02-19T03:50:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=4b3e3d228429c75d398f1aa24532e468d3220c49'/>
<id>4b3e3d228429c75d398f1aa24532e468d3220c49</id>
<content type='text'>
Impact: prevent deadlock if ring buffer gets corrupted

This patch adds a paranoid check to make sure the ring buffer consumer
does not go into an infinite loop. Since the ring buffer has been set
to read only, the consumer should not loop for more than the ring buffer
size. A check is added to make sure the consumer does not loop more than
the ring buffer size.

Signed-off-by: Steven Rostedt &lt;srostedt@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Impact: prevent deadlock if ring buffer gets corrupted

This patch adds a paranoid check to make sure the ring buffer consumer
does not go into an infinite loop. Since the ring buffer has been set
to read only, the consumer should not loop for more than the ring buffer
size. A check is added to make sure the consumer does not loop more than
the ring buffer size.

Signed-off-by: Steven Rostedt &lt;srostedt@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>tracing: have function trace select kallsyms</title>
<updated>2009-02-19T03:06:18+00:00</updated>
<author>
<name>Steven Rostedt</name>
<email>srostedt@redhat.com</email>
</author>
<published>2009-02-19T03:06:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=4d7a077c0c7bfdba04cf0aa0b79053cf4ebaacf8'/>
<id>4d7a077c0c7bfdba04cf0aa0b79053cf4ebaacf8</id>
<content type='text'>
Impact: fix output of function tracer to be useful

The function tracer is pretty useless if KALLSYMS is not configured.
Unless you are good at reading hex values, the function tracer should
select the KALLSYMS configuration.

Also, the dynamic function tracer will fail its self test if KALLSYMS
is not selected.

Signed-off-by: Steven Rostedt &lt;srostedt@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Impact: fix output of function tracer to be useful

The function tracer is pretty useless if KALLSYMS is not configured.
Unless you are good at reading hex values, the function tracer should
select the KALLSYMS configuration.

Also, the dynamic function tracer will fail its self test if KALLSYMS
is not selected.

Signed-off-by: Steven Rostedt &lt;srostedt@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>tracing: disable tracing while testing ring buffer</title>
<updated>2009-02-19T03:04:01+00:00</updated>
<author>
<name>Steven Rostedt</name>
<email>srostedt@redhat.com</email>
</author>
<published>2009-02-18T23:33:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=0c5119c1e655e0719a69601b1049acdd5ec1c125'/>
<id>0c5119c1e655e0719a69601b1049acdd5ec1c125</id>
<content type='text'>
Impact: fix to prevent hard lockup on self tests

If one of the tracers are broken and is constantly filling the ring
buffer while the test of the ring buffer is running, it will hang
the box. The reason is that the test is a consumer that will not
stop till the ring buffer is empty. But if the tracer is broken and
is constantly producing input to the buffer, this test will never
end. The result is a lockup of the box.

This happened when KALLSYMS was not defined and the dynamic ftrace
test constantly filled the ring buffer, because the filter failed
and all functions were being traced. Something was being called
that constantly filled the buffer.

Signed-off-by: Steven Rostedt &lt;srostedt@redhat.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Impact: fix to prevent hard lockup on self tests

If one of the tracers are broken and is constantly filling the ring
buffer while the test of the ring buffer is running, it will hang
the box. The reason is that the test is a consumer that will not
stop till the ring buffer is empty. But if the tracer is broken and
is constantly producing input to the buffer, this test will never
end. The result is a lockup of the box.

This happened when KALLSYMS was not defined and the dynamic ftrace
test constantly filled the ring buffer, because the filter failed
and all functions were being traced. Something was being called
that constantly filled the buffer.

Signed-off-by: Steven Rostedt &lt;srostedt@redhat.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>tracing/function-graph-tracer: trace the idle tasks</title>
<updated>2009-02-17T18:20:17+00:00</updated>
<author>
<name>Frederic Weisbecker</name>
<email>fweisbec@gmail.com</email>
</author>
<published>2009-02-17T17:35:34+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=5b058bcde961bf28678a70e44c079107313543b6'/>
<id>5b058bcde961bf28678a70e44c079107313543b6</id>
<content type='text'>
When the function graph tracer is activated, it iterates over the task_list
to allocate a stack to store the return addresses.

But the per cpu idle tasks are not iterated by using
do_each_thread / while_each_thread.

So we have to iterate on them manually.

This fixes somes weirdness in the traces and many losses of traces.
Examples on two cpus:

 0)   Xorg-4287    |   2.906 us    |              }
 0)   Xorg-4287    |   3.965 us    |            }
 0)   Xorg-4287    |   5.302 us    |          }
 ------------------------------------------
 0)   Xorg-4287    =&gt;    &lt;idle&gt;-0
 ------------------------------------------

 0)    &lt;idle&gt;-0    |   2.861 us    |                        }
 0)    &lt;idle&gt;-0    |   0.526 us    |                        set_normalized_timespec();
 0)    &lt;idle&gt;-0    |   7.201 us    |                      }
 0)    &lt;idle&gt;-0    |   8.214 us    |                    }
 0)    &lt;idle&gt;-0    |               |                    clockevents_program_event() {
 0)    &lt;idle&gt;-0    |               |                      lapic_next_event() {
 0)    &lt;idle&gt;-0    |   0.510 us    |                        native_apic_mem_write();
 0)    &lt;idle&gt;-0    |   1.546 us    |                      }
 0)    &lt;idle&gt;-0    |   2.583 us    |                    }
 0)    &lt;idle&gt;-0    | + 12.435 us   |                  }
 0)    &lt;idle&gt;-0    | + 13.470 us   |                }
 0)    &lt;idle&gt;-0    |   0.608 us    |                _spin_unlock_irqrestore();
 0)    &lt;idle&gt;-0    | + 23.270 us   |              }
 0)    &lt;idle&gt;-0    | + 24.336 us   |            }
 0)    &lt;idle&gt;-0    | + 25.417 us   |          }
 0)    &lt;idle&gt;-0    |   0.593 us    |          _spin_unlock();
 0)    &lt;idle&gt;-0    | + 41.869 us   |        }
 0)    &lt;idle&gt;-0    | + 42.906 us   |      }
 0)    &lt;idle&gt;-0    | + 95.035 us   |    }
 0)    &lt;idle&gt;-0    |   0.540 us    |    menu_reflect();
 0)    &lt;idle&gt;-0    | ! 100.404 us  |  }
 0)    &lt;idle&gt;-0    |   0.564 us    |  mce_idle_callback();
 0)    &lt;idle&gt;-0    |               |  enter_idle() {
 0)    &lt;idle&gt;-0    |   0.526 us    |    mce_idle_callback();
 0)    &lt;idle&gt;-0    |   1.757 us    |  }
 0)    &lt;idle&gt;-0    |               |  cpuidle_idle_call() {
 0)    &lt;idle&gt;-0    |               |    menu_select() {
 0)    &lt;idle&gt;-0    |   0.525 us    |      pm_qos_requirement();
 0)    &lt;idle&gt;-0    |   0.518 us    |      tick_nohz_get_sleep_length();
 0)    &lt;idle&gt;-0    |   2.621 us    |    }
[...]
 1)    &lt;idle&gt;-0    |   0.518 us    |              touch_softlockup_watchdog();
 1)    &lt;idle&gt;-0    | + 14.355 us   |            }
 1)    &lt;idle&gt;-0    | + 22.840 us   |          }
 1)    &lt;idle&gt;-0    | + 25.949 us   |        }
 1)    &lt;idle&gt;-0    |               |        handle_irq() {
 1)    &lt;idle&gt;-0    |   0.511 us    |          irq_to_desc();
 1)    &lt;idle&gt;-0    |               |          handle_edge_irq() {
 1)    &lt;idle&gt;-0    |   0.638 us    |            _spin_lock();
 1)    &lt;idle&gt;-0    |               |            ack_apic_edge() {
 1)    &lt;idle&gt;-0    |   0.510 us    |              irq_to_desc();
 1)    &lt;idle&gt;-0    |               |              move_native_irq() {
 1)    &lt;idle&gt;-0    |   0.510 us    |                irq_to_desc();
 1)    &lt;idle&gt;-0    |   1.532 us    |              }
 1)    &lt;idle&gt;-0    |   0.511 us    |              native_apic_mem_write();
 ------------------------------------------
 1)    &lt;idle&gt;-0    =&gt;    cat-5073
 ------------------------------------------

 1)    cat-5073    |   3.731 us    |                    }
 1)    cat-5073    |               |                    run_local_timers() {
 1)    cat-5073    |   0.533 us    |                      hrtimer_run_queues();
 1)    cat-5073    |               |                      raise_softirq() {
 1)    cat-5073    |               |                        __raise_softirq_irqoff() {
 1)    cat-5073    |               |                          /* nr: 1 */
 1)    cat-5073    |   2.718 us    |                        }
 1)    cat-5073    |   3.814 us    |                      }

Signed-off-by: Frederic Weisbecker &lt;fweisbec@gmail.com&gt;
Cc: Steven Rostedt &lt;rostedt@goodmis.org&gt;
Cc: Arnaldo Carvalho de Melo &lt;acme@redhat.com&gt;
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When the function graph tracer is activated, it iterates over the task_list
to allocate a stack to store the return addresses.

But the per cpu idle tasks are not iterated by using
do_each_thread / while_each_thread.

So we have to iterate on them manually.

This fixes somes weirdness in the traces and many losses of traces.
Examples on two cpus:

 0)   Xorg-4287    |   2.906 us    |              }
 0)   Xorg-4287    |   3.965 us    |            }
 0)   Xorg-4287    |   5.302 us    |          }
 ------------------------------------------
 0)   Xorg-4287    =&gt;    &lt;idle&gt;-0
 ------------------------------------------

 0)    &lt;idle&gt;-0    |   2.861 us    |                        }
 0)    &lt;idle&gt;-0    |   0.526 us    |                        set_normalized_timespec();
 0)    &lt;idle&gt;-0    |   7.201 us    |                      }
 0)    &lt;idle&gt;-0    |   8.214 us    |                    }
 0)    &lt;idle&gt;-0    |               |                    clockevents_program_event() {
 0)    &lt;idle&gt;-0    |               |                      lapic_next_event() {
 0)    &lt;idle&gt;-0    |   0.510 us    |                        native_apic_mem_write();
 0)    &lt;idle&gt;-0    |   1.546 us    |                      }
 0)    &lt;idle&gt;-0    |   2.583 us    |                    }
 0)    &lt;idle&gt;-0    | + 12.435 us   |                  }
 0)    &lt;idle&gt;-0    | + 13.470 us   |                }
 0)    &lt;idle&gt;-0    |   0.608 us    |                _spin_unlock_irqrestore();
 0)    &lt;idle&gt;-0    | + 23.270 us   |              }
 0)    &lt;idle&gt;-0    | + 24.336 us   |            }
 0)    &lt;idle&gt;-0    | + 25.417 us   |          }
 0)    &lt;idle&gt;-0    |   0.593 us    |          _spin_unlock();
 0)    &lt;idle&gt;-0    | + 41.869 us   |        }
 0)    &lt;idle&gt;-0    | + 42.906 us   |      }
 0)    &lt;idle&gt;-0    | + 95.035 us   |    }
 0)    &lt;idle&gt;-0    |   0.540 us    |    menu_reflect();
 0)    &lt;idle&gt;-0    | ! 100.404 us  |  }
 0)    &lt;idle&gt;-0    |   0.564 us    |  mce_idle_callback();
 0)    &lt;idle&gt;-0    |               |  enter_idle() {
 0)    &lt;idle&gt;-0    |   0.526 us    |    mce_idle_callback();
 0)    &lt;idle&gt;-0    |   1.757 us    |  }
 0)    &lt;idle&gt;-0    |               |  cpuidle_idle_call() {
 0)    &lt;idle&gt;-0    |               |    menu_select() {
 0)    &lt;idle&gt;-0    |   0.525 us    |      pm_qos_requirement();
 0)    &lt;idle&gt;-0    |   0.518 us    |      tick_nohz_get_sleep_length();
 0)    &lt;idle&gt;-0    |   2.621 us    |    }
[...]
 1)    &lt;idle&gt;-0    |   0.518 us    |              touch_softlockup_watchdog();
 1)    &lt;idle&gt;-0    | + 14.355 us   |            }
 1)    &lt;idle&gt;-0    | + 22.840 us   |          }
 1)    &lt;idle&gt;-0    | + 25.949 us   |        }
 1)    &lt;idle&gt;-0    |               |        handle_irq() {
 1)    &lt;idle&gt;-0    |   0.511 us    |          irq_to_desc();
 1)    &lt;idle&gt;-0    |               |          handle_edge_irq() {
 1)    &lt;idle&gt;-0    |   0.638 us    |            _spin_lock();
 1)    &lt;idle&gt;-0    |               |            ack_apic_edge() {
 1)    &lt;idle&gt;-0    |   0.510 us    |              irq_to_desc();
 1)    &lt;idle&gt;-0    |               |              move_native_irq() {
 1)    &lt;idle&gt;-0    |   0.510 us    |                irq_to_desc();
 1)    &lt;idle&gt;-0    |   1.532 us    |              }
 1)    &lt;idle&gt;-0    |   0.511 us    |              native_apic_mem_write();
 ------------------------------------------
 1)    &lt;idle&gt;-0    =&gt;    cat-5073
 ------------------------------------------

 1)    cat-5073    |   3.731 us    |                    }
 1)    cat-5073    |               |                    run_local_timers() {
 1)    cat-5073    |   0.533 us    |                      hrtimer_run_queues();
 1)    cat-5073    |               |                      raise_softirq() {
 1)    cat-5073    |               |                        __raise_softirq_irqoff() {
 1)    cat-5073    |               |                          /* nr: 1 */
 1)    cat-5073    |   2.718 us    |                        }
 1)    cat-5073    |   3.814 us    |                      }

Signed-off-by: Frederic Weisbecker &lt;fweisbec@gmail.com&gt;
Cc: Steven Rostedt &lt;rostedt@goodmis.org&gt;
Cc: Arnaldo Carvalho de Melo &lt;acme@redhat.com&gt;
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>trace: mmiotrace to the tracer menu in Kconfig</title>
<updated>2009-02-15T19:03:28+00:00</updated>
<author>
<name>Pekka Paalanen</name>
<email>pq@iki.fi</email>
</author>
<published>2009-01-03T19:23:51+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=6bc5c366b1a45ca18fba6851f62db5743b3f6db5'/>
<id>6bc5c366b1a45ca18fba6851f62db5743b3f6db5</id>
<content type='text'>
Impact: cosmetic change in Kconfig menu layout

This patch was originally suggested by Peter Zijlstra, but seems it
was forgotten.

CONFIG_MMIOTRACE and CONFIG_MMIOTRACE_TEST were selectable
directly under the Kernel hacking / debugging menu in the kernel
configuration system. They were present only for x86 and x86_64.

Other tracers that use the ftrace tracing framework are in their own
sub-menu. This patch moves the mmiotrace configuration options there.
Since the Kconfig file, where the tracer menu is, is not architecture
specific, HAVE_MMIOTRACE_SUPPORT is introduced and provided only by
x86/x86_64. CONFIG_MMIOTRACE now depends on it.

Signed-off-by: Pekka Paalanen &lt;pq@iki.fi&gt;
Signed-off-by: Steven Rostedt &lt;srostedt@redhat.com&gt;
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Impact: cosmetic change in Kconfig menu layout

This patch was originally suggested by Peter Zijlstra, but seems it
was forgotten.

CONFIG_MMIOTRACE and CONFIG_MMIOTRACE_TEST were selectable
directly under the Kernel hacking / debugging menu in the kernel
configuration system. They were present only for x86 and x86_64.

Other tracers that use the ftrace tracing framework are in their own
sub-menu. This patch moves the mmiotrace configuration options there.
Since the Kconfig file, where the tracer menu is, is not architecture
specific, HAVE_MMIOTRACE_SUPPORT is introduced and provided only by
x86/x86_64. CONFIG_MMIOTRACE now depends on it.

Signed-off-by: Pekka Paalanen &lt;pq@iki.fi&gt;
Signed-off-by: Steven Rostedt &lt;srostedt@redhat.com&gt;
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>mmiotrace: count events lost due to not recording</title>
<updated>2009-02-15T19:02:42+00:00</updated>
<author>
<name>Pekka Paalanen</name>
<email>pq@iki.fi</email>
</author>
<published>2009-01-06T11:57:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=391b170f10e669dd429aa47bce998c2fa839404c'/>
<id>391b170f10e669dd429aa47bce998c2fa839404c</id>
<content type='text'>
Impact: enhances lost events counting in mmiotrace

The tracing framework, or the ring buffer facility it uses, has a switch
to stop recording data. When recording is off, the trace events will be
lost. The framework does not count these, so mmiotrace has to count them
itself.

Signed-off-by: Pekka Paalanen &lt;pq@iki.fi&gt;
Signed-off-by: Steven Rostedt &lt;srostedt@redhat.com&gt;
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Impact: enhances lost events counting in mmiotrace

The tracing framework, or the ring buffer facility it uses, has a switch
to stop recording data. When recording is off, the trace events will be
lost. The framework does not count these, so mmiotrace has to count them
itself.

Signed-off-by: Pekka Paalanen &lt;pq@iki.fi&gt;
Signed-off-by: Steven Rostedt &lt;srostedt@redhat.com&gt;
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>ftrace: do_each_pid_task() needs rcu lock</title>
<updated>2009-02-03T21:50:58+00:00</updated>
<author>
<name>Oleg Nesterov</name>
<email>oleg@redhat.com</email>
</author>
<published>2009-02-03T19:39:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=229c4ef8ae56d69f8dec64533bf1c7f8070c1a4a'/>
<id>229c4ef8ae56d69f8dec64533bf1c7f8070c1a4a</id>
<content type='text'>
"ftrace: use struct pid" commit 978f3a45d9499c7a447ca7615455cefb63d44165
converted ftrace_pid_trace to "struct pid*".

But we can't use do_each_pid_task() without rcu_read_lock() even if
we know the pid itself can't go away (it was pinned in ftrace_pid_write).
The exiting task can detach itself from this pid at any moment.

Signed-off-by: Oleg Nesterov &lt;oleg@redhat.com&gt;
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
"ftrace: use struct pid" commit 978f3a45d9499c7a447ca7615455cefb63d44165
converted ftrace_pid_trace to "struct pid*".

But we can't use do_each_pid_task() without rcu_read_lock() even if
we know the pid itself can't go away (it was pinned in ftrace_pid_write).
The exiting task can detach itself from this pid at any moment.

Signed-off-by: Oleg Nesterov &lt;oleg@redhat.com&gt;
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>ring-buffer: reset timestamps when ring buffer is reset</title>
<updated>2009-01-22T09:31:58+00:00</updated>
<author>
<name>Steven Rostedt</name>
<email>srostedt@redhat.com</email>
</author>
<published>2009-01-21T23:45:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=91a8d07d82cac3aae3ef2ea1aaba5c9c4a934e91'/>
<id>91a8d07d82cac3aae3ef2ea1aaba5c9c4a934e91</id>
<content type='text'>
Impact: fix bad times of recent resets

The ring buffer needs to reset its timestamps when reseting of the
buffer, otherwise the timestamps are stale and might be used to
calculate times in the buffer causing funny timestamps to appear.

Signed-off-by: Steven Rostedt &lt;srostedt@redhat.com&gt;
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Impact: fix bad times of recent resets

The ring buffer needs to reset its timestamps when reseting of the
buffer, otherwise the timestamps are stale and might be used to
calculate times in the buffer causing funny timestamps to appear.

Signed-off-by: Steven Rostedt &lt;srostedt@redhat.com&gt;
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>trace: set max latency variable to zero on default</title>
<updated>2009-01-21T14:21:30+00:00</updated>
<author>
<name>Steven Rostedt</name>
<email>srostedt@redhat.com</email>
</author>
<published>2009-01-16T04:40:11+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=1092307d582a7566d23779c304cf86f3075ac5f0'/>
<id>1092307d582a7566d23779c304cf86f3075ac5f0</id>
<content type='text'>
Impact: trace max latencies on start of latency tracing

This patch sets the max latency to zero whenever one of the
irq variant tracers or the wakeup tracer is set to current tracer.

Most developers expect to see output when starting up a latency
tracer. But since the max_latency is already set to max, and
it takes a latency greater than max_latency to be recorded, there
is no trace. This is not the expected behavior and has even confused
myself.

Signed-off-by: Steven Rostedt &lt;srostedt@redhat.com&gt;
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Impact: trace max latencies on start of latency tracing

This patch sets the max latency to zero whenever one of the
irq variant tracers or the wakeup tracer is set to current tracer.

Most developers expect to see output when starting up a latency
tracer. But since the max_latency is already set to max, and
it takes a latency greater than max_latency to be recorded, there
is no trace. This is not the expected behavior and has even confused
myself.

Signed-off-by: Steven Rostedt &lt;srostedt@redhat.com&gt;
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>trace: stop all recording to ring buffer on ftrace_dump</title>
<updated>2009-01-21T14:21:30+00:00</updated>
<author>
<name>Steven Rostedt</name>
<email>srostedt@redhat.com</email>
</author>
<published>2009-01-14T19:50:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.toradex.cn/cgit/linux-toradex.git/commit/?id=a442e5e0a2011af5b2d1f118fee0a8f9079f1d88'/>
<id>a442e5e0a2011af5b2d1f118fee0a8f9079f1d88</id>
<content type='text'>
Impact: limit ftrace dump output

Currently ftrace_dump only calls ftrace_kill that is a fast way
to prevent the function tracer functions from being called (just sets
a flag and clears the function to call, nothing else). It is better
to also turn off any recording to the ring buffers as well.

Signed-off-by: Steven Rostedt &lt;srostedt@redhat.com&gt;
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Impact: limit ftrace dump output

Currently ftrace_dump only calls ftrace_kill that is a fast way
to prevent the function tracer functions from being called (just sets
a flag and clears the function to call, nothing else). It is better
to also turn off any recording to the ring buffers as well.

Signed-off-by: Steven Rostedt &lt;srostedt@redhat.com&gt;
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
</pre>
</div>
</content>
</entry>
</feed>
