函数逻辑报告 |
Source Code:block\blk-iolatency.c |
Create Date:2022-07-27 19:21:14 |
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
| 首页 | 函数Tree |
| 注解内核,赢得工具 | 下载SCCT | English |
函数名称:iolatency_check_latencies
函数原型:static void iolatency_check_latencies(struct iolatency_grp *iolat, u64 now)
返回类型:void
参数:
| 类型 | 参数 | 名称 |
|---|---|---|
| struct iolatency_grp * | iolat | |
| u64 | now |
| 522 | blkg等于lat_to_blkg(iolat) |
| 529 | latency_stat_init(iolat, & stat) |
| 530 | 禁止抢占() |
| 533 | s等于per_cpu_ptr(stats, cpu) |
| 534 | latency_stat_sum(iolat, & stat, s) |
| 535 | latency_stat_init(iolat, s) |
| 537 | 禁用抢占和中断() |
| 540 | 如果非parent则返回 |
| 545 | iolat_update_total_lat_avg(iolat, & stat) |
| 548 | 如果latency_sum_ok(iolat, & stat)且atomic_read( & Cookie to tell if we need to scale up or down. )恒等于DEFAULT_SCALE_COOKIE则返回 |
| 553 | spin_lock_irqsave( & lock, flags) |
| 555 | latency_stat_sum(iolat, & cur_stat, & stat) |
| 556 | Total io's from all of our children for the last summation. 减等于 Our current number of IO's for the last summation. |
| 557 | Total io's from all of our children for the last summation. 加等于latency_stat_samples(iolat, & cur_stat) |
| 560 | 如果 Last time we adjusted the scale of everybody. 大于等于now或now减 Last time we adjusted the scale of everybody. 小于BLKIOLATENCY_MIN_ADJUST_TIME则转到:out |
| 564 | 如果latency_sum_ok(iolat, & cur_stat)且latency_sum_ok(iolat, & stat)则 |
| 566 | 如果latency_stat_samples(iolat, & cur_stat)小于BLKIOLATENCY_MIN_GOOD_SAMPLES则转到:out |
| 573 | 否则如果 The latency that we missed. 恒等于0或 The latency that we missed. 大于等于min_lat_nsec则 |
| 583 | latency_stat_init(iolat, & cur_stat) |
| 584 | out : |
| 585 | spin_unlock_irqrestore( & lock, flags) |
| 名称 | 描述 |
|---|---|
| blkcg_iolatency_done_bio |
| 源代码转换工具 开放的插件接口 | X |
|---|---|
| 支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |