<feed xmlns='http://www.w3.org/2005/Atom'>
<title>user/sven/linux.git/include/linux/stacktrace.h, branch v3.12.41</title>
<subtitle>Linux Kernel
</subtitle>
<id>https://git.stealer.net/cgit.cgi/user/sven/linux.git/atom?h=v3.12.41</id>
<link rel='self' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/atom?h=v3.12.41'/>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/'/>
<updated>2011-06-15T02:48:51Z</updated>
<entry>
<title>x86: Swap save_stack_trace_regs parameters</title>
<updated>2011-06-15T02:48:51Z</updated>
<author>
<name>Masami Hiramatsu</name>
<email>masami.hiramatsu.pt@hitachi.com</email>
</author>
<published>2011-06-08T07:09:21Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=395810627b6a43c8d0ec948884043946fa162308'/>
<id>urn:sha1:395810627b6a43c8d0ec948884043946fa162308</id>
<content type='text'>
Swap the 1st and 2nd parameters of save_stack_trace_regs()
as same as the parameters of save_stack_trace_tsk().

Signed-off-by: Masami Hiramatsu &lt;masami.hiramatsu.pt@hitachi.com&gt;
Cc: yrl.pp-manager.tt@hitachi.com
Cc: Frederic Weisbecker &lt;fweisbec@gmail.com&gt;
Cc: Peter Zijlstra &lt;a.p.zijlstra@chello.nl&gt;
Cc: Namhyung Kim &lt;namhyung@gmail.com&gt;
Link: http://lkml.kernel.org/r/20110608070921.17777.31103.stgit@fedora15
Signed-off-by: Steven Rostedt &lt;rostedt@goodmis.org&gt;
</content>
</entry>
<entry>
<title>x86: Eliminate bp argument from the stack tracing routines</title>
<updated>2010-11-18T13:37:34Z</updated>
<author>
<name>Soeren Sandmann Pedersen</name>
<email>sandmann@redhat.com</email>
</author>
<published>2010-11-05T09:59:39Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=9c0729dc8062bed96189bd14ac6d4920f3958743'/>
<id>urn:sha1:9c0729dc8062bed96189bd14ac6d4920f3958743</id>
<content type='text'>
The various stack tracing routines take a 'bp' argument in which the
caller is supposed to provide the base pointer to use, or 0 if doesn't
have one. Since bp is garbage whenever CONFIG_FRAME_POINTER is not
defined, this means all callers in principle should either always pass
0, or be conditional on CONFIG_FRAME_POINTER.

However, there are only really three use cases for stack tracing:

(a) Trace the current task, including IRQ stack if any
(b) Trace the current task, but skip IRQ stack
(c) Trace some other task

In all cases, if CONFIG_FRAME_POINTER is not defined, bp should just
be 0.  If it _is_ defined, then

- in case (a) bp should be gotten directly from the CPU's register, so
  the caller should pass NULL for regs,

- in case (b) the caller should should pass the IRQ registers to
  dump_trace(),

- in case (c) bp should be gotten from the top of the task's stack, so
  the caller should pass NULL for regs.

Hence, the bp argument is not necessary because the combination of
task and regs is sufficient to determine an appropriate value for bp.

This patch introduces a new inline function stack_frame(task, regs)
that computes the desired bp. This function is then called from the
two versions of dump_stack().

Signed-off-by: Soren Sandmann &lt;ssp@redhat.com&gt;
Acked-by: Steven Rostedt &lt;rostedt@goodmis.org&gt;
Cc: Thomas Gleixner &lt;tglx@linutronix.de&gt;
Cc: Ingo Molnar &lt;mingo@redhat.com&gt;
Cc: H. Peter Anvin &lt;hpa@zytor.com&gt;
Cc: Peter Zijlstra &lt;a.p.zijlstra@chello.nl&gt;
Cc: Arjan van de Ven &lt;arjan@infradead.org&gt;,
Cc: Frederic Weisbecker &lt;fweisbec@gmail.com&gt;,
Cc: Arnaldo Carvalho de Melo &lt;acme@redhat.com&gt;,
LKML-Reference: &lt;m3oc9rop28.fsf@dhcp-100-3-82.bos.redhat.com&gt;&gt;
Signed-off-by: Frederic Weisbecker &lt;fweisbec@gmail.com&gt;
</content>
</entry>
<entry>
<title>stacktrace: add forward-declaration struct task_struct</title>
<updated>2009-06-12T21:04:12Z</updated>
<author>
<name>Vegard Nossum</name>
<email>vegard.nossum@gmail.com</email>
</author>
<published>2008-06-13T13:31:11Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=b618ad31bb2020db6a36929122e5554e33210d47'/>
<id>urn:sha1:b618ad31bb2020db6a36929122e5554e33210d47</id>
<content type='text'>
This is needed if the header is to be free-standing.

Signed-off-by: Vegard Nossum &lt;vegard.nossum@gmail.com&gt;
</content>
</entry>
<entry>
<title>x86: add save_stack_trace_bp() for tracing from a specific stack frame</title>
<updated>2009-06-12T21:01:05Z</updated>
<author>
<name>Vegard Nossum</name>
<email>vegard.nossum@gmail.com</email>
</author>
<published>2008-05-20T09:15:43Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=acc6be5405b90c9f0fb0eb8a74ec4d4b7b5bf48f'/>
<id>urn:sha1:acc6be5405b90c9f0fb0eb8a74ec4d4b7b5bf48f</id>
<content type='text'>
This will help kmemcheck (and possibly other debugging tools) since we
can now simply pass regs-&gt;bp to the stack tracer instead of specifying
the number of stack frames to skip, which is unreliable if gcc decides
to inline functions, etc.

Note that this makes the API incomplete for other architectures, but I
expect that those can be updated lazily, e.g. when they need it.

Cc: Arjan van de Ven &lt;arjan@linux.intel.com&gt;
Signed-off-by: Vegard Nossum &lt;vegard.nossum@gmail.com&gt;
</content>
</entry>
<entry>
<title>tracing/stack-tracer: introduce CONFIG_USER_STACKTRACE_SUPPORT</title>
<updated>2008-11-23T10:53:50Z</updated>
<author>
<name>Török Edwin</name>
<email>edwintorok@gmail.com</email>
</author>
<published>2008-11-23T10:39:08Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=8d26487fd4ddda7a0237da418fb8669fb06ae557'/>
<id>urn:sha1:8d26487fd4ddda7a0237da418fb8669fb06ae557</id>
<content type='text'>
Impact: cleanup

User stack tracing is just implemented for x86, but it is not x86 specific.

Introduce a generic config flag, that is currently enabled only for x86.
When other arches implement it, they will have to
SELECT USER_STACKTRACE_SUPPORT.

Signed-off-by: Török Edwin &lt;edwintorok@gmail.com&gt;
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
</content>
</entry>
<entry>
<title>tracing/stack-tracer: fix style issues</title>
<updated>2008-11-23T10:53:48Z</updated>
<author>
<name>Török Edwin</name>
<email>edwintorok@gmail.com</email>
</author>
<published>2008-11-23T10:39:06Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=8d7c6a96164651dbbab449ef0b5c20ae1f76a3a1'/>
<id>urn:sha1:8d7c6a96164651dbbab449ef0b5c20ae1f76a3a1</id>
<content type='text'>
Impact: cleanup

Signed-off-by: Török Edwin &lt;edwintorok@gmail.com&gt;
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
</content>
</entry>
<entry>
<title>tracing: add support for userspace stacktraces in tracing/iter_ctrl</title>
<updated>2008-11-23T08:25:15Z</updated>
<author>
<name>Török Edwin</name>
<email>edwintorok@gmail.com</email>
</author>
<published>2008-11-22T11:28:47Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=02b67518e2b1c490787dac7f35e1204e74fe21ba'/>
<id>urn:sha1:02b67518e2b1c490787dac7f35e1204e74fe21ba</id>
<content type='text'>
Impact: add new (default-off) tracing visualization feature

Usage example:

 mount -t debugfs nodev /sys/kernel/debug
 cd /sys/kernel/debug/tracing
 echo userstacktrace &gt;iter_ctrl
 echo sched_switch &gt;current_tracer
 echo 1 &gt;tracing_enabled
 .... run application ...
 echo 0 &gt;tracing_enabled

Then read one of 'trace','latency_trace','trace_pipe'.

To get the best output you can compile your userspace programs with
frame pointers (at least glibc + the app you are tracing).

Signed-off-by: Török Edwin &lt;edwintorok@gmail.com&gt;
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
</content>
</entry>
<entry>
<title>include/linux/stacktrace.h: declare struct task_struct</title>
<updated>2008-10-04T01:22:18Z</updated>
<author>
<name>Andrew Morton</name>
<email>akpm@linux-foundation.org</email>
</author>
<published>2008-10-03T22:23:41Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=897312bd240357c88ce906633703c324c6f0a5cd'/>
<id>urn:sha1:897312bd240357c88ce906633703c324c6f0a5cd</id>
<content type='text'>
include/linux/stacktrace.h:13: warning:
 'struct task_struct' declared inside parameter list

(This might be a hard error on sparc64, which uses this header and has
-Werror)

Reported-by: "Randy.Dunlap" &lt;rdunlap@xenotime.net&gt;
Acked-by: Ingo Molnar &lt;mingo@elte.hu&gt;
Cc: Peter Zijlstra &lt;a.p.zijlstra@chello.nl&gt;
Cc: Arjan van de Ven &lt;arjan@infradead.org&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
<entry>
<title>sched: latencytop support</title>
<updated>2008-01-25T20:08:34Z</updated>
<author>
<name>Arjan van de Ven</name>
<email>arjan@linux.intel.com</email>
</author>
<published>2008-01-25T20:08:34Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=9745512ce79de686df354dc70a8d1a74d801892d'/>
<id>urn:sha1:9745512ce79de686df354dc70a8d1a74d801892d</id>
<content type='text'>
LatencyTOP kernel infrastructure; it measures latencies in the
scheduler and tracks it system wide and per process.

Signed-off-by: Arjan van de Ven &lt;arjan@linux.intel.com&gt;
Signed-off-by: Ingo Molnar &lt;mingo@elte.hu&gt;
</content>
</entry>
<entry>
<title>stacktrace: fix header file for !CONFIG_STACKTRACE</title>
<updated>2007-07-19T17:04:49Z</updated>
<author>
<name>Johannes Berg</name>
<email>johannes@sipsolutions.net</email>
</author>
<published>2007-07-19T08:49:02Z</published>
<link rel='alternate' type='text/html' href='https://git.stealer.net/cgit.cgi/user/sven/linux.git/commit/?id=3b5ad0797c0e4049001f961a8b58f1d0ce532072'/>
<id>urn:sha1:3b5ad0797c0e4049001f961a8b58f1d0ce532072</id>
<content type='text'>
The print_stack_trace macro in stacktrace.h has a wrong number of
arguments, fix it.

Signed-off-by: Johannes Berg &lt;johannes@sipsolutions.net&gt;
Cc: Ingo Molnar &lt;mingo@elte.hu&gt;
Cc: Peter Zijlstra &lt;a.p.zijlstra@chello.nl&gt;
Cc: Arjan van de Ven &lt;arjan@infradead.org&gt;
Signed-off-by: Andrew Morton &lt;akpm@linux-foundation.org&gt;
Signed-off-by: Linus Torvalds &lt;torvalds@linux-foundation.org&gt;
</content>
</entry>
</feed>
