Function report |
Source Code:kernel\trace\trace_sched_wakeup.c |
Create Date:2022-07-28 12:09:54 |
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
| home page | Tree |
| Annotation kernel can get tool activity | Download SCCT | Chinese |
Name:Prologue for the wakeup function tracers
Proto:static int func_prolog_preempt_disable(struct trace_array *tr, struct trace_array_cpu **data, int *pc)
Type:int
Parameter:
| Type | Parameter | Name |
|---|---|---|
| struct trace_array * | tr | |
| struct trace_array_cpu ** | data | |
| int * | pc |
| 75 | If Value is more likely to compile time(!wakeup_task) Then Return 0 |
| 78 | pc = 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. |
| 82 | If cpu != wakeup_current_cpu Then Go to out_enable |
| 85 | data = per_cpu_ptr(data, cpu) |
| 86 | disabled = atomic_inc_return( & disabled) |
| 87 | If Value for the false possibility is greater at compile time(disabled != 1) Then Go to out |
| 90 | Return 1 |
| 92 | out : |
| 93 | atomic_dec( & disabled) |
| 95 | out_enable : |
| 97 | Return 0 |
| Name | Describe |
|---|---|
| wakeup_tracer_call | wakeup uses its own tracer function to keep the overhead down: |
| 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 |