函数逻辑报告 |
Source Code:kernel\trace\trace_events_hist.c |
Create Date:2022-07-27 13:42:42 |
| Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
| 首页 | 函数Tree |
| 注解内核,赢得工具 | 下载SCCT | English |
函数名称:hist_trigger_print_key
函数原型:static void hist_trigger_print_key(struct seq_file *m, struct hist_trigger_data *hist_data, void *key, struct tracing_map_elt *elt)
返回类型:void
参数:
| 类型 | 参数 | 名称 |
|---|---|---|
| struct seq_file * | m | |
| struct hist_trigger_data * | hist_data | |
| void * | key | |
| struct tracing_map_elt * | elt |
| 5398 | bool multiline = false |
| 5411 | field_name等于hist_field_name(key_field, 0) |
| 5413 | 如果flags按位与HIST_FIELD_FL_HEX则 |
| 5415 | seq_printf(m, "%s: %llx", field_name, uval) |
| 5416 | 否则如果flags按位与HIST_FIELD_FL_SYM则 |
| 5419 | seq_printf(m, "%s: [%llx] %-45s", field_name, uval, str) |
| 5421 | 否则如果flags按位与HIST_FIELD_FL_SYM_OFFSET则 |
| 5424 | seq_printf(m, "%s: [%llx] %-55s", field_name, uval, str) |
| 5426 | 否则如果flags按位与HIST_FIELD_FL_EXECNAME则 |
| 5427 | elt_data等于private_data |
| 5430 | 如果WARN_ON_ONCE(!elt_data)则返回 |
| 5436 | seq_printf(m, "%s: %-16s[%10llu]", field_name, comm, uval) |
| 5438 | 否则如果flags按位与HIST_FIELD_FL_SYSCALL则 |
| 5442 | syscall_name等于get_syscall_name(uval) |
| 5443 | 如果非syscall_name则syscall_name等于"unknown_syscall" |
| 5446 | seq_printf(m, "%s: %-30s[%3llu]", field_name, syscall_name, uval) |
| 5448 | 否则如果flags按位与HIST_FIELD_FL_STACKTRACE则 |
| 5453 | multiline = true |
| 5454 | 否则如果flags按位与HIST_FIELD_FL_LOG2则 |
| 5455 | seq_printf(m, "%s: ~ 2^%-2llu", field_name, * (u64 * )(key + offset)) |
| 5457 | 否则如果flags按位与HIST_FIELD_FL_STRING则 |
| 5458 | seq_printf(m, "%s: %-50s", field_name, (char * )(key + offset)) |
| 5460 | 否则 |
| 5462 | seq_printf(m, "%s: %10llu", field_name, uval) |
| 名称 | 描述 |
|---|---|
| hist_trigger_entry_print |
| 源代码转换工具 开放的插件接口 | X |
|---|---|
| 支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |