函数逻辑报告 |
Source Code:kernel\trace\trace_sched_wakeup.c |
Create Date:2022-07-27 13:17:05 |
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
| 首页 | 函数Tree |
| 注解内核,赢得工具 | 下载SCCT | English |
函数名称:probe_wakeup
函数原型:static void probe_wakeup(void *ignore, struct task_struct *p)
返回类型:void
参数:
| 类型 | 参数 | 名称 |
|---|---|---|
| void * | ignore | |
| struct task_struct * | p |
| 534 | 如果此条件成立可能性大(为编译器优化)(!tracer_enabled)则返回 |
| 548 | 如果tracing_dl或wakeup_dl且非dl_task(p)或wakeup_rt且非dl_task(p)且非rt_task(p)或非dl_task(p)且prio大于等于wakeup_prio或prio大于等于prio的值则返回 |
| 554 | disabled等于atomic_inc_return( & disabled) |
| 555 | 如果此条件成立可能性小(为编译器优化)(disabled != 1)则转到:out |
| 562 | 如果非tracer_enabled或tracing_dl或非dl_task(p)且prio大于等于wakeup_prio则转到:out_locked |
| 569 | wakeup_cpu等于task_cpu(p) |
| 571 | wakeup_prio等于prio |
| 577 | 如果dl_task(p)则tracing_dl等于1 |
| 579 | 否则tracing_dl等于0 |
| 582 | wakeup_task等于get_task_struct(p) |
| 584 | local_save_flags(flags) |
| 586 | data等于per_cpu_ptr(data, wakeup_cpu) |
| 587 | preempt_timestamp等于ftrace_now(cpu) |
| 588 | tracing_sched_wakeup_trace(wakeup_trace, p, 当前进程, flags, pc) |
| 589 | __trace_stack(wakeup_trace, flags, 0, pc) |
| 598 | out_locked : |
| 599 | arch_spin_unlock( & wakeup_lock) |
| 600 | out : |
| 601 | atomic_dec( & disabled) |
| 源代码转换工具 开放的插件接口 | X |
|---|---|
| 支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |