| Function report | 
| Source Code: kernel\trace\trace_events_inject.c | Create Date:2022-07-28 12:27:18 | 
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick | 
| home page | Tree | 
| Annotation kernel can get tool activity | Download SCCT | Chinese | 
Name:Caller is responsible to free the *pentry.
Proto:static int parse_entry(char *str, struct trace_event_call *call, void **pentry)
Type:int
Parameter:
| Type | Parameter | Name | 
|---|---|---|
| char * | str | |
| struct trace_event_call * | call | |
| void ** | pentry | 
| 196 | void * entry = NULL | 
| 198 | val = 0 | 
| 201 | entry = trace_alloc_entry(call, & entry_size) | 
| 207 | tracing_generic_entry_update(entry, type, irq_flags, We mask the PREEMPT_NEED_RESCHED bit so as not to confuse all current users* that think a non-zero value indicates we cannot preempt.) | 
| 211 | If is_function_field(field) Then Return -EINVAL | 
| 214 | If is_string_field(field) Then | 
| 217 | If filter_type == FILTER_STATIC_STRING Then | 
| 219 | Else if filter_type == FILTER_DYN_STRING Then | 
| 221 | str_loc = entry_size & 0xffff | 
| 224 | entry_size += str_len | 
| 225 | pentry = krealloc(entry, entry_size, GFP_KERNEL) | 
| 226 | If Not pentry Then | 
| 235 | Else | 
| 239 | paddr = INJECT_STRING | 
| 241 | Else | 
| 249 | Case size == 2 | 
| 255 | Case size == 4 | 
| 261 | Case size == 8 | 
| 262 | No 3D Now!(entry + offset, & val, 8) | 
| 263 | Break | 
| 264 | Default | 
| 265 | Return -EINVAL | 
| 275 | Return entry_size | 
| Name | Describe | 
|---|---|
| event_inject_write | 
| 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 |