函数逻辑报告 |
Source Code:kernel\rcu\tree_exp.h |
Create Date:2022-07-27 11:28:38 |
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
| 首页 | 函数Tree |
| 注解内核,赢得工具 | 下载SCCT | English |
函数名称:synchronize_sched_expedited_wait
函数原型:static void synchronize_sched_expedited_wait(void)
返回类型:void
参数:无
| 470 | jiffies_start等于jiffies |
| 472 | 循环 |
| 477 | 如果ret大于0或Like sync_rcu_preempt_exp_done(), but this function assumes the caller* doesn't hold the rcu_node's ->lock, and will acquire and release the lock* itself则返回 |
| 480 | 如果rcu_cpu_stall_suppress则继续下一循环 |
| 483 | 打印错误信息("INFO: %s detected expedited stalls on CPUs/tasks: {", Name of structure. ) |
| 485 | ndetected等于0 |
| 487 | ndetected加等于rcu_print_task_exp_stall(rnp) |
| 492 | 如果非READ_ONCE(CPUs or groups that need to check in )按位与mask的值则继续下一循环 |
| 494 | ndetected自加 |
| 495 | rdp等于per_cpu_ptr( & rcu_data, cpu) |
| 496 | 打印标准信息(" %d-%c%c%c", cpu, "O."[!!cpu_online(cpu)], "o."[!!(Mask to apply to leaf qsmask. & complete. )], "N."[!!(Mask to apply to leaf qsmask. & ginning of each expedited GP. )]) |
| 502 | 打印标准信息(" } %lu jiffies s: %lu root: %#lx/%c\n", jiffies - jiffies_start, Take a ticket. , READ_ONCE(CPUs or groups that need to check in ), ".T"[!!s no such task. ]) |
| 506 | 如果ndetected则 |
| 507 | 打印错误信息("blocking rcu_node structures:") |
| 513 | 打印标准信息(" l=%u:%d-%d:%#lx/%c", is at level 0. , lowest-numbered CPU or group here. , highest-numbered CPU or group here. , READ_ONCE(CPUs or groups that need to check in ), ".T"[!!s no such task. ]) |
| 518 | 打印标准信息("\n") |
| 523 | 如果非READ_ONCE(CPUs or groups that need to check in )按位与mask的值则继续下一循环 |
| 525 | dump_cpu_task(cpu) |
| 名称 | 描述 |
|---|---|
| rcu_exp_wait_wake | Wait for the current expedited grace period to complete, and then* wake up everyone who piggybacked on the just-completed expedited* grace period. Also update all the ->exp_seq_rq counters as needed* in order to avoid counter-wrap problems. |
| 源代码转换工具 开放的插件接口 | X |
|---|---|
| 支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |