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 |