Function report |
Source Code:kernel\trace\trace_uprobe.c |
Create Date:2022-07-28 12:44:45 |
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
| home page | Tree |
| Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:__uprobe_trace_func
Proto:static void __uprobe_trace_func(struct trace_uprobe *tu, unsigned long func, struct pt_regs *regs, struct uprobe_cpu_buffer *ucb, int dsize, struct trace_event_file *trace_file)
Type:void
Parameter:
| Type | Parameter | Name |
|---|---|---|
| struct trace_uprobe * | tu | |
| unsigned long | func | |
| struct pt_regs * | regs | |
| struct uprobe_cpu_buffer * | ucb | |
| int | dsize | |
| struct trace_event_file * | trace_file |
| 938 | call = trace_probe_event_call( & tp) |
| 940 | WARN_ON(call != event_call) |
| 942 | If WARN_ON_ONCE( trace entry size + dsize > PAGE_SIZE) Then Return |
| 948 | esize = SIZEOF_TRACE_ENTRY(is_ret_probe(tu)) |
| 949 | size = esize + trace entry size + dsize |
| 950 | event = trace_event_buffer_lock_reserve( & buffer, trace_file, type, size, 0, 0) |
| 952 | If Not event Then Return |
| 955 | entry = g_buffer_event_data - return the data of the event*@event: the event to get the data from |
| 956 | If is_ret_probe(tu) Then |
| 958 | vaddr[1] = instruction_pointer(regs) |
| 959 | data = DATAOF_TRACE_ENTRY(entry, true) |
| 960 | Else |
| 961 | vaddr[0] = instruction_pointer(regs) |
| 962 | data = DATAOF_TRACE_ENTRY(entry, false) |
| 965 | No 3D Now!(data, buf, trace entry size + dsize) |
| Name | Describe |
|---|---|
| uprobe_trace_func | probe handler |
| uretprobe_trace_func |
| 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 |