函数逻辑报告 |
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 插件可实现:逻辑报告 代码生成和批量转换代码 |