linux/kernel/stacktrace.c
<<
tion.1./spaue= .1./forme= .1.a tion.1 href="../linux+v30/.6/kernel/stacktrace.c">tion.1.img src="../.static/gfx/right.png" alt=">>">ti./spaue=ti.spau class="lxr_search">tiontion.1.input typ4k hidden" nam4k navtarget" >sta4k ">tion.1.input typ4k text" nam4k search" idk search">tion.1.butt typ4k submit">Searchtion.1Prefs= .1./a>ti./spaue=on.1 1./dive=on.1 1.form acvalu="ajax+*" method="post" onsubmit="return false;">ti.input typ4k hidden" nam4k ajax_lookup" idk ajax_lookup" >sta4k ">ton.1 1./forme=ton.1 1.div class="headingbott m">= .div idk file_contents"e
1 11./a>.spau class="comment">/*./spaue=1 12./a>.spau class="comment"> * kernel/stacktrace.c./spaue=1 13./a>.spau class="comment"> *./spaue=1 14./a>.spau class="comment"> * Stack trace management funcvalus./spaue=1 15./a>.spau class="comment"> *./spaue=1 16./a>.spau class="comment"> *  Copyright (C) 2006 Red Hat, Inc., Ingo Molnar <mingo@redhat.com>./spaue=1 17./a>.spau class="comment"> */./spaue=1 18./a>#include <linux/sched.h./a>>=1 19./a>#include <linux/kernel.h./a>>=1 ptioa>#include <linux/export.h./a>>=1 11./a>#include <linux/kallsyms.h./a>>=1 12./a>#include <linux/stacktrace.h./a>>=1 13./a>=1 14./a>void1.a href="+code=print_stack_trace" class="sref">print_stack_trace./a>(struct1.a href="+code=stack_trace" class="sref">stack_trace./a> *.a href="+code=trace" class="sref">trace./a>, int1.a href="+code=spaces" class="sref">spaces./a>)=1 15./a>{=1 16./a>        int1.a href="+code=i" class="sref">i./a>;=1 17./a>=1 18./a>        if (.a href="+code=WARN_ON" class="sref">WARN_ON./a>(!.a href="+code=trace" class="sref">trace./a>->.a href="+code=entries" class="sref">entries./a>))=1 19./a>                return;=1 20./a>=1 21./a>        for (.a href="+code=i" class="sref">i./a> = 0;1.a href="+code=i" class="sref">i./a> <1.a href="+code=trace" class="sref">trace./a>->.a href="+code=nr_entries" class="sref">nr_entries./a>;1.a href="+code=i" class="sref">i./a>++) {=1 22./a>                .a href="+code=printk" class="sref">printk./a>(.spau class="string">"%*c"./spaue, 1 +1.a href="+code=spaces" class="sref">spaces./a>, .spau class="string">' './spaue);=1 23./a>                .a href="+code=print_ip_sym" class="sref">print_ip_sym./a>(.a href="+code=trace" class="sref">trace./a>->.a href="+code=entries" class="sref">entries./a>[.a href="+code=i" class="sref">i./a>]);=1 24./a>        }=1 25./a>}=1 26./a>.a href="+code=EXPORT_SYMBOL_GPL" class="sref">EXPORT_SYMBOL_GPL./a>(.a href="+code=print_stack_trace" class="sref">print_stack_trace./a>);=1 27./a>=1 28./a>.spau class="comment">/*./spaue=1 29./a>.spau class="comment"> * Architectures that do not implement save_stack_trace_tsk or./spaue=1 30./a>.spau class="comment"> * save_stack_trace_regs get this weak alias and a once-per-bootup warning./spaue=1 31./a>.spau class="comment"> * (whenever this facility is utilized - for example by procfs):./spaue=1 32./a>.spau class="comment"> */./spaue=1 33./a>.a href="+code=__weak" class="sref">__weak./a> void=1 34./a>.a href="+code=save_stack_trace_tsk" class="sref">save_stack_trace_tsk./a>(struct1.a href="+code=task_struct" class="sref">task_struct./a> *.a href="+code=tsk" class="sref">tsk./a>, struct1.a href="+code=stack_trace" class="sref">stack_trace./a> *.a href="+code=trace" class="sref">trace./a>)=1 35./a>{=1 36./a>        .a href="+code=WARN_ONCE" class="sref">WARN_ONCE./a>(1, .a href="+code=KERN_INFO" class="sref">KERN_INFO./a> .spau class="string">"save_stack_trace_tsk() not implemented yet.\n"./spaue);=1 37./a>}=1 38./a>=1 39./a>.a href="+code=__weak" class="sref">__weak./a> void=1 40./a>.a href="+code=save_stack_trace_regs" class="sref">save_stack_trace_regs./a>(struct1.a href="+code=pt_regs" class="sref">pt_regs./a> *.a href="+code=regs" class="sref">regs./a>, struct1.a href="+code=stack_trace" class="sref">stack_trace./a> *.a href="+code=trace" class="sref">trace./a>)=1 41./a>{=1 42./a>        .a href="+code=WARN_ONCE" class="sref">WARN_ONCE./a>(1, .a href="+code=KERN_INFO" class="sref">KERN_INFO./a> .spau class="string">"save_stack_trace_regs() not implemented yet.\n"./spaue);=1 43./a>}=1 44./a>./pre>
The original LXR software by the LXR community./a>, this experimental vers
	  by lxr@linux.no./a>.
./dive=.div class="subfooter">
lxr.linux.no kindly hosted by Redpill Linpro AS./a>, provider of Linux consulting and operavalus services since 1995.
./dive=
./bodye=./htmle=