Linux Kernel
3.7.1
Main Page
Related Pages
Modules
Namespaces
Data Structures
Files
File List
Globals
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Groups
Pages
kernel
stacktrace.c
Go to the documentation of this file.
1
/*
2
* kernel/stacktrace.c
3
*
4
* Stack trace management functions
5
*
6
* Copyright (C) 2006 Red Hat, Inc., Ingo Molnar <
[email protected]
>
7
*/
8
#include <linux/sched.h>
9
#include <linux/kernel.h>
10
#include <linux/export.h>
11
#include <
linux/kallsyms.h
>
12
#include <
linux/stacktrace.h
>
13
14
void
print_stack_trace
(
struct
stack_trace *
trace
,
int
spaces)
15
{
16
int
i
;
17
18
if
(
WARN_ON
(!trace->entries))
19
return
;
20
21
for
(i = 0; i < trace->nr_entries; i++) {
22
printk
(
"%*c"
, 1 + spaces,
' '
);
23
print_ip_sym(trace->entries[i]);
24
}
25
}
26
EXPORT_SYMBOL_GPL
(
print_stack_trace
);
27
28
/*
29
* Architectures that do not implement save_stack_trace_tsk or
30
* save_stack_trace_regs get this weak alias and a once-per-bootup warning
31
* (whenever this facility is utilized - for example by procfs):
32
*/
33
__weak
void
34
save_stack_trace_tsk
(
struct
task_struct
*tsk,
struct
stack_trace *
trace
)
35
{
36
WARN_ONCE
(1,
KERN_INFO
"save_stack_trace_tsk() not implemented yet.\n"
);
37
}
38
39
__weak
void
40
save_stack_trace_regs
(
struct
pt_regs
*
regs
,
struct
stack_trace *
trace
)
41
{
42
WARN_ONCE
(1,
KERN_INFO
"save_stack_trace_regs() not implemented yet.\n"
);
43
}
Generated on Thu Jan 10 2013 12:53:50 for Linux Kernel by
1.8.2