函数逻辑报告 |
Source Code:kernel\trace\trace_hwlat.c |
Create Date:2022-07-27 13:17:36 |
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
| 首页 | 函数Tree |
| 注解内核,赢得工具 | 下载SCCT | English |
函数名称:get_sample - sample the CPU TSC and look for likely hardware latencies* Used to repeatedly capture the CPU TSC (or similar), looking for potential* hardware-induced latency. Called with interrupts disabled and with* hwlat_data.lock held.
函数原型:static int get_sample(void)
返回类型:int
参数:无
| 169 | tr等于hwlat_trace |
| 171 | last_total等于0 |
| 172 | sample等于0 |
| 173 | thresh等于tracing_thresh |
| 174 | outer_sample等于0 |
| 175 | ret等于负1 |
| 180 | nmi_total_ts等于0 |
| 181 | nmi_count等于0 |
| 190 | 循环 |
| 197 | diff等于time_to_us(time_sub(t1, last_t2)) |
| 199 | 如果diff小于0则 |
| 203 | 如果diff大于outer_sample则outer_sample等于diff |
| 208 | total等于time_to_us(time_sub(t2, start)) |
| 211 | 如果total小于last_total则 |
| 215 | last_total等于total |
| 218 | diff等于time_to_us(time_sub(t2, t1)) |
| 221 | 如果diff小于0则 |
| 229 | 当total小于等于active sampling portion of window 循环 |
| 235 | ret等于0 |
| 238 | 如果sample大于thresh或outer_sample大于thresh则 |
| 242 | ret等于1 |
| 248 | al since reset 自加 |
| 255 | trace_hwlat_sample( & s) |
| 257 | latency等于两数取大(sample, outer_sample) |
| 260 | 如果latency大于max_latency则 |
| 261 | max_latency等于latency |
| 262 | latency_fsnotify(tr) |
| 266 | out : |
| 267 | 返回:ret |
| 名称 | 描述 |
|---|---|
| kthread_fn | kthread_fn - The CPU time sampling/hardware latency detection kernel thread* Used to periodically sample the CPU TSC via a call to get_sample. We* disable interrupts, which does (intentionally) introduce latency since we |
| 源代码转换工具 开放的插件接口 | X |
|---|---|
| 支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |