函数逻辑报告 |
Source Code:kernel\trace\trace_events_hist.c |
Create Date:2022-07-27 13:39:14 |
Last Modify:2020-03-12 14:18:49 | Copyright©Brick |
首页 | 函数Tree |
注解内核,赢得工具 | 下载SCCT | English |
函数名称:create_hist_field
函数原型:static struct hist_field *create_hist_field(struct hist_trigger_data *hist_data, struct ftrace_event_field *field, unsigned long flags, char *var_name)
返回类型:struct hist_field
参数:
类型 | 参数 | 名称 |
---|---|---|
struct hist_trigger_data * | hist_data | |
struct ftrace_event_field * | field | |
unsigned long | flags | |
char * | var_name |
2473 | 如果field且is_function_field(field)则返回:NULL |
2476 | hist_field等于分配内存并置零 |
2477 | 如果非hist_field则返回:NULL |
2480 | ref等于1 |
2484 | 如果flags按位与HIST_FIELD_FL_EXPR或flags按位与HIST_FIELD_FL_ALIAS则转到:out |
2487 | 如果flags按位与HIST_FIELD_FL_VAR_REF则 |
2488 | fn等于hist_field_var_ref |
2489 | 转到:out |
2492 | 如果flags按位与HIST_FIELD_FL_HITCOUNT则 |
2501 | 如果flags按位与HIST_FIELD_FL_STACKTRACE则 |
2502 | fn等于hist_field_none |
2503 | 转到:out |
2506 | 如果flags按位与HIST_FIELD_FL_LOG2则 |
2507 | fl等于flags按位与HIST_FIELD_FL_LOG2的反 |
2508 | fn等于hist_field_log2 |
2509 | operands[0]等于create_hist_field(hist_data, field, fl, NULL) |
2511 | type等于kstrdup(type, GFP_KERNEL) |
2514 | 转到:out |
2517 | 如果flags按位与HIST_FIELD_FL_TIMESTAMP则 |
2526 | 如果flags按位与HIST_FIELD_FL_CPU则 |
2535 | 如果WARN_ON_ONCE(!field)则转到:out |
2538 | 如果is_string_field(field)则 |
2539 | flags或等于HIST_FIELD_FL_STRING |
2542 | type等于kstrdup(type, GFP_KERNEL) |
2546 | 如果filter_type恒等于FILTER_STATIC_STRING则fn等于hist_field_string |
2548 | 否则如果filter_type恒等于FILTER_DYN_STRING则fn等于hist_field_dynstring |
2550 | 否则fn等于hist_field_pstring |
2552 | 否则 |
2555 | type等于kstrdup(type, GFP_KERNEL) |
2559 | fn等于select_value_fn(size, is_signed) |
2561 | 如果非fn则 |
2562 | destroy_hist_field(hist_field, 0) |
2563 | 返回:NULL |
2566 | out : |
2570 | 如果var_name则 |
2576 | 返回:hist_field |
2577 | free : |
2578 | destroy_hist_field(hist_field, 0) |
2579 | 返回:NULL |
名称 | 描述 |
---|---|
create_hist_field | |
create_var_ref | reate_var_ref - Create a variable reference and attach it to trigger*@hist_data: The trigger that will be referencing the variable*@var_field: The VAR field to create a reference to*@system: The optional system string*@event_name: The optional event_name |
create_alias | |
parse_atom | |
parse_unary | |
parse_expr | |
create_hitcount_val | |
create_key_field |
源代码转换工具 开放的插件接口 | X |
---|---|
支持:c/c++/esqlc/java Oracle/Informix/Mysql 插件可实现:逻辑报告 代码生成和批量转换代码 |