Function report | 
Source Code:kernel\trace\trace.c | 
Create Date:2022-07-28 11:59:14 | 
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick | 
| home page | Tree | 
| Annotation kernel can get tool activity | Download SCCT | Chinese | 
Name:__ftrace_trace_stack
Proto:static void __ftrace_trace_stack(struct ring_buffer *buffer, unsigned long flags, int skip, int pc, struct pt_regs *regs)
Type:void
Parameter:
| Type | Parameter | Name | 
|---|---|---|
| struct ring_buffer * | buffer | |
| unsigned long | flags | |
| int | skip | |
| int | pc | |
| struct pt_regs * | regs | 
| 2892 | call = event_kernel_stack | 
| 2914 | preempt_disable_notrace() | 
| 2916 | stackidx = __this_cpu_inc_return(ftrace_stack_reserve) - 1 | 
| 2919 | If WARN_ON_ONCE(stackidx > Allow 4 levels of nesting: normal, softirq, irq, NMI ) Then Go to out | 
| 2931 | fstack = this_cpu_ptr(stacks) + stackidx | 
| 2934 | If regs Then | 
| 2937 | Else | 
| 2941 | size = nr_entries * sizeof(unsignedlong) | 
| 2942 | event = __trace_buffer_lock_reserve(buffer, TRACE_STACK, size of entry + size, flags, pc) | 
| 2946 | entry = g_buffer_event_data - return the data of the event*@event: the event to get the data from | 
| 2948 | No 3D Now!( & caller, calls, size) | 
| 2949 | size = nr_entries | 
| 2951 | If Not call_filter_check_discard(call, entry, buffer, event) Then __buffer_unlock_commit(buffer, event) | 
| 2954 | out : | 
| 2958 | preempt_enable_notrace() | 
| Name | Describe | 
|---|---|
| ftrace_trace_stack | |
| __trace_stack | |
| trace_dump_stack | race_dump_stack - record a stack back trace in the trace buffer*@skip: Number of functions to skip (helper handlers) | 
| Source code conversion tool public plug-in interface  | X | 
|---|---|
| Support c/c++/esqlc/java Oracle/Informix/Mysql Plug-in can realize: logical Report Code generation and batch code conversion  |