Symbol: hist_field
kernel/trace/trace_events_hist.c
1005
struct hist_field *field;
kernel/trace/trace_events_hist.c
1037
static bool field_has_hist_vars(struct hist_field *hist_field,
kernel/trace/trace_events_hist.c
1045
if (!hist_field)
kernel/trace/trace_events_hist.c
1048
if (hist_field->flags & HIST_FIELD_FL_VAR ||
kernel/trace/trace_events_hist.c
1049
hist_field->flags & HIST_FIELD_FL_VAR_REF)
kernel/trace/trace_events_hist.c
1053
struct hist_field *operand;
kernel/trace/trace_events_hist.c
1055
operand = hist_field->operands[i];
kernel/trace/trace_events_hist.c
1065
struct hist_field *hist_field;
kernel/trace/trace_events_hist.c
1069
hist_field = hist_data->fields[i];
kernel/trace/trace_events_hist.c
1070
if (field_has_hist_vars(hist_field, 0))
kernel/trace/trace_events_hist.c
1120
static struct hist_field *find_var_field(struct hist_trigger_data *hist_data,
kernel/trace/trace_events_hist.c
1123
struct hist_field *hist_field, *found = NULL;
kernel/trace/trace_events_hist.c
1127
hist_field = hist_data->fields[i];
kernel/trace/trace_events_hist.c
1128
if (hist_field && hist_field->flags & HIST_FIELD_FL_VAR &&
kernel/trace/trace_events_hist.c
1129
strcmp(hist_field->var.name, var_name) == 0) {
kernel/trace/trace_events_hist.c
1130
found = hist_field;
kernel/trace/trace_events_hist.c
1138
static struct hist_field *find_var(struct hist_trigger_data *hist_data,
kernel/trace/trace_events_hist.c
1144
struct hist_field *hist_field;
kernel/trace/trace_events_hist.c
1148
hist_field = find_var_field(hist_data, var_name);
kernel/trace/trace_events_hist.c
1149
if (hist_field)
kernel/trace/trace_events_hist.c
1150
return hist_field;
kernel/trace/trace_events_hist.c
1155
hist_field = find_var_field(test_data, var_name);
kernel/trace/trace_events_hist.c
1156
if (hist_field)
kernel/trace/trace_events_hist.c
1157
return hist_field;
kernel/trace/trace_events_hist.c
1195
static struct hist_field *find_file_var(struct trace_event_file *file,
kernel/trace/trace_events_hist.c
1200
struct hist_field *hist_field;
kernel/trace/trace_events_hist.c
1207
hist_field = find_var_field(test_data, var_name);
kernel/trace/trace_events_hist.c
1208
if (hist_field)
kernel/trace/trace_events_hist.c
1209
return hist_field;
kernel/trace/trace_events_hist.c
1216
static struct hist_field *
kernel/trace/trace_events_hist.c
1220
struct hist_field *hist_field, *found = NULL;
kernel/trace/trace_events_hist.c
1234
hist_field = find_file_var(file, var_name);
kernel/trace/trace_events_hist.c
1235
if (hist_field) {
kernel/trace/trace_events_hist.c
1242
found = hist_field;
kernel/trace/trace_events_hist.c
1249
static struct hist_field *find_event_var(struct hist_trigger_data *hist_data,
kernel/trace/trace_events_hist.c
1255
struct hist_field *hist_field = NULL;
kernel/trace/trace_events_hist.c
1259
hist_field = find_match_var(hist_data, var_name);
kernel/trace/trace_events_hist.c
1260
if (IS_ERR(hist_field))
kernel/trace/trace_events_hist.c
1262
if (hist_field)
kernel/trace/trace_events_hist.c
1263
return hist_field;
kernel/trace/trace_events_hist.c
1270
hist_field = find_file_var(file, var_name);
kernel/trace/trace_events_hist.c
1272
return hist_field;
kernel/trace/trace_events_hist.c
1275
static u64 hist_field_var_ref(struct hist_field *hist_field,
kernel/trace/trace_events_hist.c
1288
var_val = elt_data->var_ref_vals[hist_field->var_ref_idx];
kernel/trace/trace_events_hist.c
1298
struct hist_field *hist_field;
kernel/trace/trace_events_hist.c
1304
hist_field = hist_data->var_refs[i];
kernel/trace/trace_events_hist.c
1305
var_idx = hist_field->var.idx;
kernel/trace/trace_events_hist.c
1306
var_data = hist_field->var.hist_data;
kernel/trace/trace_events_hist.c
1328
if (self || !hist_field->read_once)
kernel/trace/trace_events_hist.c
1339
static const char *hist_field_name(struct hist_field *field,
kernel/trace/trace_events_hist.c
1651
struct hist_field *hist_field;
kernel/trace/trace_events_hist.c
1659
hist_field = hist_data->fields[i];
kernel/trace/trace_events_hist.c
1661
if (hist_field->flags & HIST_FIELD_FL_EXECNAME) {
kernel/trace/trace_events_hist.c
169
struct hist_field *operands[HIST_FIELD_OPERANDS_MAX];
kernel/trace/trace_events_hist.c
1716
static const char *get_hist_field_flags(struct hist_field *hist_field)
kernel/trace/trace_events_hist.c
1720
if (hist_field->flags & HIST_FIELD_FL_HEX)
kernel/trace/trace_events_hist.c
1722
else if (hist_field->flags & HIST_FIELD_FL_SYM)
kernel/trace/trace_events_hist.c
1724
else if (hist_field->flags & HIST_FIELD_FL_SYM_OFFSET)
kernel/trace/trace_events_hist.c
1726
else if (hist_field->flags & HIST_FIELD_FL_EXECNAME)
kernel/trace/trace_events_hist.c
1728
else if (hist_field->flags & HIST_FIELD_FL_SYSCALL)
kernel/trace/trace_events_hist.c
1730
else if (hist_field->flags & HIST_FIELD_FL_LOG2)
kernel/trace/trace_events_hist.c
1732
else if (hist_field->flags & HIST_FIELD_FL_BUCKET)
kernel/trace/trace_events_hist.c
1734
else if (hist_field->flags & HIST_FIELD_FL_TIMESTAMP_USECS)
kernel/trace/trace_events_hist.c
1736
else if (hist_field->flags & HIST_FIELD_FL_PERCENT)
kernel/trace/trace_events_hist.c
1738
else if (hist_field->flags & HIST_FIELD_FL_GRAPH)
kernel/trace/trace_events_hist.c
1740
else if (hist_field->flags & HIST_FIELD_FL_STACKTRACE)
kernel/trace/trace_events_hist.c
1746
static void expr_field_str(struct hist_field *field, char *expr)
kernel/trace/trace_events_hist.c
1770
static char *expr_str(struct hist_field *field, unsigned int level)
kernel/trace/trace_events_hist.c
1919
static void get_hist_field(struct hist_field *hist_field)
kernel/trace/trace_events_hist.c
1921
hist_field->ref++;
kernel/trace/trace_events_hist.c
1924
static void __destroy_hist_field(struct hist_field *hist_field)
kernel/trace/trace_events_hist.c
1926
if (--hist_field->ref > 1)
kernel/trace/trace_events_hist.c
1929
kfree(hist_field->var.name);
kernel/trace/trace_events_hist.c
1930
kfree(hist_field->name);
kernel/trace/trace_events_hist.c
1933
kfree_const(hist_field->type);
kernel/trace/trace_events_hist.c
1935
kfree(hist_field->system);
kernel/trace/trace_events_hist.c
1936
kfree(hist_field->event_name);
kernel/trace/trace_events_hist.c
1938
kfree(hist_field);
kernel/trace/trace_events_hist.c
1941
static void destroy_hist_field(struct hist_field *hist_field,
kernel/trace/trace_events_hist.c
1949
if (!hist_field)
kernel/trace/trace_events_hist.c
1952
if (hist_field->flags & HIST_FIELD_FL_VAR_REF)
kernel/trace/trace_events_hist.c
1956
destroy_hist_field(hist_field->operands[i], level + 1);
kernel/trace/trace_events_hist.c
1958
__destroy_hist_field(hist_field);
kernel/trace/trace_events_hist.c
1961
static struct hist_field *create_hist_field(struct hist_trigger_data *hist_data,
kernel/trace/trace_events_hist.c
1966
struct hist_field *hist_field;
kernel/trace/trace_events_hist.c
1971
hist_field = kzalloc_obj(struct hist_field);
kernel/trace/trace_events_hist.c
1972
if (!hist_field)
kernel/trace/trace_events_hist.c
1975
hist_field->ref = 1;
kernel/trace/trace_events_hist.c
1977
hist_field->hist_data = hist_data;
kernel/trace/trace_events_hist.c
1983
hist_field->fn_num = HIST_FIELD_FN_VAR_REF;
kernel/trace/trace_events_hist.c
1988
hist_field->fn_num = HIST_FIELD_FN_COUNTER;
kernel/trace/trace_events_hist.c
1989
hist_field->size = sizeof(u64);
kernel/trace/trace_events_hist.c
1990
hist_field->type = "u64";
kernel/trace/trace_events_hist.c
1995
hist_field->fn_num = HIST_FIELD_FN_CONST;
kernel/trace/trace_events_hist.c
1996
hist_field->size = sizeof(u64);
kernel/trace/trace_events_hist.c
1997
hist_field->type = kstrdup("u64", GFP_KERNEL);
kernel/trace/trace_events_hist.c
1998
if (!hist_field->type)
kernel/trace/trace_events_hist.c
2005
hist_field->fn_num = HIST_FIELD_FN_STACK;
kernel/trace/trace_events_hist.c
2007
hist_field->fn_num = HIST_FIELD_FN_NOP;
kernel/trace/trace_events_hist.c
2008
hist_field->size = HIST_STACKTRACE_SIZE;
kernel/trace/trace_events_hist.c
2009
hist_field->type = kstrdup_const("unsigned long[]", GFP_KERNEL);
kernel/trace/trace_events_hist.c
2010
if (!hist_field->type)
kernel/trace/trace_events_hist.c
2017
hist_field->fn_num = flags & HIST_FIELD_FL_LOG2 ? HIST_FIELD_FN_LOG2 :
kernel/trace/trace_events_hist.c
2019
hist_field->operands[0] = create_hist_field(hist_data, field, fl, NULL);
kernel/trace/trace_events_hist.c
2020
if (!hist_field->operands[0])
kernel/trace/trace_events_hist.c
2022
hist_field->size = hist_field->operands[0]->size;
kernel/trace/trace_events_hist.c
2023
hist_field->type = kstrdup_const(hist_field->operands[0]->type, GFP_KERNEL);
kernel/trace/trace_events_hist.c
2024
if (!hist_field->type)
kernel/trace/trace_events_hist.c
2030
hist_field->fn_num = HIST_FIELD_FN_TIMESTAMP;
kernel/trace/trace_events_hist.c
2031
hist_field->size = sizeof(u64);
kernel/trace/trace_events_hist.c
2032
hist_field->type = "u64";
kernel/trace/trace_events_hist.c
2037
hist_field->fn_num = HIST_FIELD_FN_CPU;
kernel/trace/trace_events_hist.c
2038
hist_field->size = sizeof(int);
kernel/trace/trace_events_hist.c
2039
hist_field->type = "unsigned int";
kernel/trace/trace_events_hist.c
2044
hist_field->fn_num = HIST_FIELD_FN_COMM;
kernel/trace/trace_events_hist.c
2045
hist_field->size = MAX_FILTER_STR_VAL;
kernel/trace/trace_events_hist.c
2046
hist_field->type = "char[]";
kernel/trace/trace_events_hist.c
2058
hist_field->size = MAX_FILTER_STR_VAL;
kernel/trace/trace_events_hist.c
2059
hist_field->type = kstrdup_const(field->type, GFP_KERNEL);
kernel/trace/trace_events_hist.c
2060
if (!hist_field->type)
kernel/trace/trace_events_hist.c
2064
hist_field->fn_num = HIST_FIELD_FN_STRING;
kernel/trace/trace_events_hist.c
2065
hist_field->size = field->size;
kernel/trace/trace_events_hist.c
2067
hist_field->fn_num = HIST_FIELD_FN_DYNSTRING;
kernel/trace/trace_events_hist.c
2069
hist_field->fn_num = HIST_FIELD_FN_RELDYNSTRING;
kernel/trace/trace_events_hist.c
2071
hist_field->fn_num = HIST_FIELD_FN_PSTRING;
kernel/trace/trace_events_hist.c
2075
hist_field->size = MAX_FILTER_STR_VAL;
kernel/trace/trace_events_hist.c
2076
hist_field->type = kstrdup_const(field->type, GFP_KERNEL);
kernel/trace/trace_events_hist.c
2077
if (!hist_field->type)
kernel/trace/trace_events_hist.c
2080
hist_field->fn_num = HIST_FIELD_FN_STACK;
kernel/trace/trace_events_hist.c
2082
hist_field->size = field->size;
kernel/trace/trace_events_hist.c
2083
hist_field->is_signed = field->is_signed;
kernel/trace/trace_events_hist.c
2084
hist_field->type = kstrdup_const(field->type, GFP_KERNEL);
kernel/trace/trace_events_hist.c
2085
if (!hist_field->type)
kernel/trace/trace_events_hist.c
2088
hist_field->fn_num = select_value_fn(field->size,
kernel/trace/trace_events_hist.c
2090
if (hist_field->fn_num == HIST_FIELD_FN_NOP) {
kernel/trace/trace_events_hist.c
2091
destroy_hist_field(hist_field, 0);
kernel/trace/trace_events_hist.c
2096
hist_field->field = field;
kernel/trace/trace_events_hist.c
2097
hist_field->flags = flags;
kernel/trace/trace_events_hist.c
210
static u64 hist_fn_call(struct hist_field *hist_field,
kernel/trace/trace_events_hist.c
2100
hist_field->var.name = kstrdup(var_name, GFP_KERNEL);
kernel/trace/trace_events_hist.c
2101
if (!hist_field->var.name)
kernel/trace/trace_events_hist.c
2105
return hist_field;
kernel/trace/trace_events_hist.c
2107
destroy_hist_field(hist_field, 0);
kernel/trace/trace_events_hist.c
2129
static int init_var_ref(struct hist_field *ref_field,
kernel/trace/trace_events_hist.c
2130
struct hist_field *var_field,
kernel/trace/trace_events_hist.c
216
static u64 hist_field_const(struct hist_field *field,
kernel/trace/trace_events_hist.c
2189
struct hist_field *var_field)
kernel/trace/trace_events_hist.c
2191
struct hist_field *ref_field;
kernel/trace/trace_events_hist.c
2219
static struct hist_field *create_var_ref(struct hist_trigger_data *hist_data,
kernel/trace/trace_events_hist.c
2220
struct hist_field *var_field,
kernel/trace/trace_events_hist.c
2224
struct hist_field *ref_field;
kernel/trace/trace_events_hist.c
225
static u64 hist_field_counter(struct hist_field *field,
kernel/trace/trace_events_hist.c
2308
static struct hist_field *parse_var_ref(struct hist_trigger_data *hist_data,
kernel/trace/trace_events_hist.c
2312
struct hist_field *var_field = NULL, *ref_field = NULL;
kernel/trace/trace_events_hist.c
234
static u64 hist_field_string(struct hist_field *hist_field,
kernel/trace/trace_events_hist.c
240
char *addr = (char *)(event + hist_field->field->offset);
kernel/trace/trace_events_hist.c
2439
static struct hist_field *create_alias(struct hist_trigger_data *hist_data,
kernel/trace/trace_events_hist.c
2440
struct hist_field *var_ref,
kernel/trace/trace_events_hist.c
2443
struct hist_field *alias = NULL;
kernel/trace/trace_events_hist.c
245
static u64 hist_field_dynstring(struct hist_field *hist_field,
kernel/trace/trace_events_hist.c
2463
static struct hist_field *parse_const(struct hist_trigger_data *hist_data,
kernel/trace/trace_events_hist.c
2468
struct hist_field *field = NULL;
kernel/trace/trace_events_hist.c
2486
static struct hist_field *parse_atom(struct hist_trigger_data *hist_data,
kernel/trace/trace_events_hist.c
2492
struct hist_field *hist_field = NULL;
kernel/trace/trace_events_hist.c
2497
hist_field = parse_const(hist_data, str, var_name, flags);
kernel/trace/trace_events_hist.c
2498
if (!hist_field) {
kernel/trace/trace_events_hist.c
2502
return hist_field;
kernel/trace/trace_events_hist.c
251
u32 str_item = *(u32 *)(event + hist_field->field->offset);
kernel/trace/trace_events_hist.c
2525
hist_field = parse_var_ref(hist_data, ref_system,
kernel/trace/trace_events_hist.c
2527
if (hist_field) {
kernel/trace/trace_events_hist.c
2529
hist_field = create_alias(hist_data, hist_field, var_name);
kernel/trace/trace_events_hist.c
2530
if (!hist_field) {
kernel/trace/trace_events_hist.c
2535
return hist_field;
kernel/trace/trace_events_hist.c
2546
hist_field = create_hist_field(hist_data, field, *flags, var_name);
kernel/trace/trace_events_hist.c
2547
if (!hist_field) {
kernel/trace/trace_events_hist.c
2551
hist_field->buckets = buckets;
kernel/trace/trace_events_hist.c
2553
return hist_field;
kernel/trace/trace_events_hist.c
2558
static struct hist_field *parse_expr(struct hist_trigger_data *hist_data,
kernel/trace/trace_events_hist.c
2563
static struct hist_field *parse_unary(struct hist_trigger_data *hist_data,
kernel/trace/trace_events_hist.c
2568
struct hist_field *operand1, *expr = NULL;
kernel/trace/trace_events_hist.c
258
static u64 hist_field_reldynstring(struct hist_field *hist_field,
kernel/trace/trace_events_hist.c
264
u32 *item = event + hist_field->field->offset;
kernel/trace/trace_events_hist.c
2656
struct hist_field *operand1,
kernel/trace/trace_events_hist.c
2657
struct hist_field *operand2,
kernel/trace/trace_events_hist.c
2658
struct hist_field **var1,
kernel/trace/trace_events_hist.c
2659
struct hist_field **var2)
kernel/trace/trace_events_hist.c
2666
struct hist_field *var;
kernel/trace/trace_events_hist.c
2677
struct hist_field *var;
kernel/trace/trace_events_hist.c
2695
static struct hist_field *parse_expr(struct hist_trigger_data *hist_data,
kernel/trace/trace_events_hist.c
2700
struct hist_field *operand1 = NULL, *operand2 = NULL, *expr = NULL;
kernel/trace/trace_events_hist.c
2701
struct hist_field *var1 = NULL, *var2 = NULL;
kernel/trace/trace_events_hist.c
272
static u64 hist_field_pstring(struct hist_field *hist_field,
kernel/trace/trace_events_hist.c
278
char **addr = (char **)(event + hist_field->field->offset);
kernel/trace/trace_events_hist.c
283
static u64 hist_field_log2(struct hist_field *hist_field,
kernel/trace/trace_events_hist.c
289
struct hist_field *operand = hist_field->operands[0];
kernel/trace/trace_events_hist.c
2906
struct hist_field *target_hist_field, *hist_field;
kernel/trace/trace_events_hist.c
2916
hist_field = hist_data->fields[i + n];
kernel/trace/trace_events_hist.c
2919
if (strcmp(hist_field->type, target_hist_field->type) != 0)
kernel/trace/trace_events_hist.c
2921
if (hist_field->size != target_hist_field->size)
kernel/trace/trace_events_hist.c
2923
if (hist_field->is_signed != target_hist_field->is_signed)
kernel/trace/trace_events_hist.c
296
static u64 hist_field_bucket(struct hist_field *hist_field,
kernel/trace/trace_events_hist.c
2966
static struct hist_field *
kernel/trace/trace_events_hist.c
2970
struct hist_field *event_var;
kernel/trace/trace_events_hist.c
3012
static struct hist_field *
kernel/trace/trace_events_hist.c
302
struct hist_field *operand = hist_field->operands[0];
kernel/trace/trace_events_hist.c
3021
struct hist_field *key_field;
kernel/trace/trace_events_hist.c
3022
struct hist_field *event_var;
kernel/trace/trace_events_hist.c
303
unsigned long buckets = hist_field->buckets;
kernel/trace/trace_events_hist.c
3132
static struct hist_field *
kernel/trace/trace_events_hist.c
3137
struct hist_field *hist_field = NULL;
kernel/trace/trace_events_hist.c
3154
hist_field = find_var_field(hist_data, var_name);
kernel/trace/trace_events_hist.c
3156
return hist_field;
kernel/trace/trace_events_hist.c
317
static u64 hist_field_plus(struct hist_field *hist_field,
kernel/trace/trace_events_hist.c
3176
struct hist_field *var = field_var->var;
kernel/trace/trace_events_hist.c
3177
struct hist_field *val = field_var->val;
kernel/trace/trace_events_hist.c
3228
static struct hist_field *create_var(struct hist_trigger_data *hist_data,
kernel/trace/trace_events_hist.c
323
struct hist_field *operand1 = hist_field->operands[0];
kernel/trace/trace_events_hist.c
3232
struct hist_field *var;
kernel/trace/trace_events_hist.c
324
struct hist_field *operand2 = hist_field->operands[1];
kernel/trace/trace_events_hist.c
3240
var = kzalloc_obj(struct hist_field);
kernel/trace/trace_events_hist.c
3274
struct hist_field *val = NULL, *var = NULL;
kernel/trace/trace_events_hist.c
332
static u64 hist_field_minus(struct hist_field *hist_field,
kernel/trace/trace_events_hist.c
338
struct hist_field *operand1 = hist_field->operands[0];
kernel/trace/trace_events_hist.c
339
struct hist_field *operand2 = hist_field->operands[1];
kernel/trace/trace_events_hist.c
347
static u64 hist_field_div(struct hist_field *hist_field,
kernel/trace/trace_events_hist.c
353
struct hist_field *operand1 = hist_field->operands[0];
kernel/trace/trace_events_hist.c
354
struct hist_field *operand2 = hist_field->operands[1];
kernel/trace/trace_events_hist.c
3556
struct hist_field *save_val = hist_data->save_vars[i]->val;
kernel/trace/trace_events_hist.c
3557
struct hist_field *save_var = hist_data->save_vars[i]->var;
kernel/trace/trace_events_hist.c
3634
struct hist_field *var_field, *ref_field, *track_var = NULL;
kernel/trace/trace_events_hist.c
370
static u64 div_by_power_of_two(struct hist_field *hist_field,
kernel/trace/trace_events_hist.c
376
struct hist_field *operand1 = hist_field->operands[0];
kernel/trace/trace_events_hist.c
377
struct hist_field *operand2 = hist_field->operands[1];
kernel/trace/trace_events_hist.c
384
static u64 div_by_not_power_of_two(struct hist_field *hist_field,
kernel/trace/trace_events_hist.c
390
struct hist_field *operand1 = hist_field->operands[0];
kernel/trace/trace_events_hist.c
3909
struct hist_field *hist_field,
kernel/trace/trace_events_hist.c
391
struct hist_field *operand2 = hist_field->operands[1];
kernel/trace/trace_events_hist.c
3924
if (strstr(hist_field->type, "char[") && field->is_string
kernel/trace/trace_events_hist.c
3928
if (strstr(hist_field->type, "long[") && field->is_stack)
kernel/trace/trace_events_hist.c
3931
if (strcmp(field->type, hist_field->type) != 0) {
kernel/trace/trace_events_hist.c
3932
if (field->size != hist_field->size ||
kernel/trace/trace_events_hist.c
3933
(!field->is_string && field->is_signed != hist_field->is_signed))
kernel/trace/trace_events_hist.c
3940
static struct hist_field *
kernel/trace/trace_events_hist.c
3946
struct hist_field *hist_field;
kernel/trace/trace_events_hist.c
3950
hist_field = find_target_event_var(hist_data, system, event, var);
kernel/trace/trace_events_hist.c
3951
if (!hist_field) {
kernel/trace/trace_events_hist.c
3957
hist_field = find_event_var(hist_data, system, event, var);
kernel/trace/trace_events_hist.c
3960
if (!hist_field)
kernel/trace/trace_events_hist.c
3963
return hist_field;
kernel/trace/trace_events_hist.c
3966
static struct hist_field *
kernel/trace/trace_events_hist.c
3971
struct hist_field *hist_field = NULL;
kernel/trace/trace_events_hist.c
398
static u64 div_by_mult_and_shift(struct hist_field *hist_field,
kernel/trace/trace_events_hist.c
3984
hist_field = field_var->var;
kernel/trace/trace_events_hist.c
4006
hist_field = create_field_var_hist(hist_data, system, event, var);
kernel/trace/trace_events_hist.c
4007
if (IS_ERR(hist_field))
kernel/trace/trace_events_hist.c
4011
return hist_field;
kernel/trace/trace_events_hist.c
4014
hist_field = NULL;
kernel/trace/trace_events_hist.c
4023
struct hist_field *hist_field, *var_ref;
kernel/trace/trace_events_hist.c
404
struct hist_field *operand1 = hist_field->operands[0];
kernel/trace/trace_events_hist.c
405
struct hist_field *operand2 = hist_field->operands[1];
kernel/trace/trace_events_hist.c
4072
hist_field = trace_action_find_var(hist_data, data,
kernel/trace/trace_events_hist.c
4076
hist_field = trace_action_create_field_var(hist_data,
kernel/trace/trace_events_hist.c
4082
if (!hist_field) {
kernel/trace/trace_events_hist.c
4088
if (check_synth_field(event, hist_field, field_pos) == 0) {
kernel/trace/trace_events_hist.c
4089
var_ref = create_var_ref(hist_data, hist_field,
kernel/trace/trace_events_hist.c
4273
struct hist_field *hist_field;
kernel/trace/trace_events_hist.c
4276
hist_field = parse_expr(hist_data, file, field_str, flags, var_name, &n_subexprs);
kernel/trace/trace_events_hist.c
4277
if (IS_ERR(hist_field)) {
kernel/trace/trace_events_hist.c
4278
ret = PTR_ERR(hist_field);
kernel/trace/trace_events_hist.c
4283
if (hist_field->flags & HIST_FIELD_FL_VAR) {
kernel/trace/trace_events_hist.c
4285
if (hist_field->flags & (HIST_FIELD_FL_GRAPH | HIST_FIELD_FL_PERCENT |
kernel/trace/trace_events_hist.c
4290
if (hist_field->flags & (HIST_FIELD_FL_GRAPH | HIST_FIELD_FL_PERCENT |
kernel/trace/trace_events_hist.c
4297
hist_data->fields[val_idx] = hist_field;
kernel/trace/trace_events_hist.c
432
static u64 hist_field_mult(struct hist_field *hist_field,
kernel/trace/trace_events_hist.c
4324
static u64 hist_field_execname(struct hist_field *hist_field,
kernel/trace/trace_events_hist.c
4343
static u64 hist_field_stack(struct hist_field *hist_field,
kernel/trace/trace_events_hist.c
4349
u32 str_item = *(u32 *)(event + hist_field->field->offset);
kernel/trace/trace_events_hist.c
4356
static u64 hist_fn_call(struct hist_field *hist_field,
kernel/trace/trace_events_hist.c
4362
switch (hist_field->fn_num) {
kernel/trace/trace_events_hist.c
4364
return hist_field_var_ref(hist_field, elt, buffer, rbe, event);
kernel/trace/trace_events_hist.c
4366
return hist_field_counter(hist_field, elt, buffer, rbe, event);
kernel/trace/trace_events_hist.c
4368
return hist_field_const(hist_field, elt, buffer, rbe, event);
kernel/trace/trace_events_hist.c
4370
return hist_field_log2(hist_field, elt, buffer, rbe, event);
kernel/trace/trace_events_hist.c
4372
return hist_field_bucket(hist_field, elt, buffer, rbe, event);
kernel/trace/trace_events_hist.c
4374
return hist_field_timestamp(hist_field, elt, buffer, rbe, event);
kernel/trace/trace_events_hist.c
4376
return hist_field_cpu(hist_field, elt, buffer, rbe, event);
kernel/trace/trace_events_hist.c
4378
return hist_field_comm(hist_field, elt, buffer, rbe, event);
kernel/trace/trace_events_hist.c
438
struct hist_field *operand1 = hist_field->operands[0];
kernel/trace/trace_events_hist.c
4380
return hist_field_string(hist_field, elt, buffer, rbe, event);
kernel/trace/trace_events_hist.c
4382
return hist_field_dynstring(hist_field, elt, buffer, rbe, event);
kernel/trace/trace_events_hist.c
4384
return hist_field_reldynstring(hist_field, elt, buffer, rbe, event);
kernel/trace/trace_events_hist.c
4386
return hist_field_pstring(hist_field, elt, buffer, rbe, event);
kernel/trace/trace_events_hist.c
4388
return hist_field_s64(hist_field, elt, buffer, rbe, event);
kernel/trace/trace_events_hist.c
439
struct hist_field *operand2 = hist_field->operands[1];
kernel/trace/trace_events_hist.c
4390
return hist_field_u64(hist_field, elt, buffer, rbe, event);
kernel/trace/trace_events_hist.c
4392
return hist_field_s32(hist_field, elt, buffer, rbe, event);
kernel/trace/trace_events_hist.c
4394
return hist_field_u32(hist_field, elt, buffer, rbe, event);
kernel/trace/trace_events_hist.c
4396
return hist_field_s16(hist_field, elt, buffer, rbe, event);
kernel/trace/trace_events_hist.c
4398
return hist_field_u16(hist_field, elt, buffer, rbe, event);
kernel/trace/trace_events_hist.c
4400
return hist_field_s8(hist_field, elt, buffer, rbe, event);
kernel/trace/trace_events_hist.c
4402
return hist_field_u8(hist_field, elt, buffer, rbe, event);
kernel/trace/trace_events_hist.c
4404
return hist_field_unary_minus(hist_field, elt, buffer, rbe, event);
kernel/trace/trace_events_hist.c
4406
return hist_field_minus(hist_field, elt, buffer, rbe, event);
kernel/trace/trace_events_hist.c
4408
return hist_field_plus(hist_field, elt, buffer, rbe, event);
kernel/trace/trace_events_hist.c
4410
return hist_field_div(hist_field, elt, buffer, rbe, event);
kernel/trace/trace_events_hist.c
4412
return hist_field_mult(hist_field, elt, buffer, rbe, event);
kernel/trace/trace_events_hist.c
4414
return div_by_power_of_two(hist_field, elt, buffer, rbe, event);
kernel/trace/trace_events_hist.c
4416
return div_by_not_power_of_two(hist_field, elt, buffer, rbe, event);
kernel/trace/trace_events_hist.c
4418
return div_by_mult_and_shift(hist_field, elt, buffer, rbe, event);
kernel/trace/trace_events_hist.c
4420
return hist_field_execname(hist_field, elt, buffer, rbe, event);
kernel/trace/trace_events_hist.c
4422
return hist_field_stack(hist_field, elt, buffer, rbe, event);
kernel/trace/trace_events_hist.c
4429
static void update_var_execname(struct hist_field *hist_field)
kernel/trace/trace_events_hist.c
4431
hist_field->flags = HIST_FIELD_FL_STRING | HIST_FIELD_FL_VAR |
kernel/trace/trace_events_hist.c
4433
hist_field->size = MAX_FILTER_STR_VAL;
kernel/trace/trace_events_hist.c
4434
hist_field->is_signed = 0;
kernel/trace/trace_events_hist.c
4436
kfree_const(hist_field->type);
kernel/trace/trace_events_hist.c
4437
hist_field->type = "char[]";
kernel/trace/trace_events_hist.c
4439
hist_field->fn_num = HIST_FIELD_FN_EXECNAME;
kernel/trace/trace_events_hist.c
447
static u64 hist_field_unary_minus(struct hist_field *hist_field,
kernel/trace/trace_events_hist.c
4526
struct hist_field *hist_field = NULL;
kernel/trace/trace_events_hist.c
453
struct hist_field *operand = hist_field->operands[0];
kernel/trace/trace_events_hist.c
4539
hist_field = create_hist_field(hist_data, NULL, flags, NULL);
kernel/trace/trace_events_hist.c
4541
hist_field = parse_expr(hist_data, file, field_str, flags,
kernel/trace/trace_events_hist.c
4543
if (IS_ERR(hist_field)) {
kernel/trace/trace_events_hist.c
4544
ret = PTR_ERR(hist_field);
kernel/trace/trace_events_hist.c
4548
if (field_has_hist_vars(hist_field, 0)) {
kernel/trace/trace_events_hist.c
4550
destroy_hist_field(hist_field, 0);
kernel/trace/trace_events_hist.c
4555
key_size = hist_field->size;
kernel/trace/trace_events_hist.c
4558
hist_data->fields[key_idx] = hist_field;
kernel/trace/trace_events_hist.c
462
static u64 hist_field_##type(struct hist_field *hist_field, \
kernel/trace/trace_events_hist.c
468
type *addr = (type *)(event + hist_field->field->offset); \
kernel/trace/trace_events_hist.c
4754
struct hist_field *hist_field;
kernel/trace/trace_events_hist.c
4796
hist_field = hist_data->fields[j];
kernel/trace/trace_events_hist.c
4797
if (hist_field->flags & HIST_FIELD_FL_VAR)
kernel/trace/trace_events_hist.c
4802
test_name = hist_field_name(hist_field, 0);
kernel/trace/trace_events_hist.c
5094
struct hist_field *hist_field;
kernel/trace/trace_events_hist.c
5098
hist_field = hist_data->fields[i];
kernel/trace/trace_events_hist.c
5099
if (hist_field->flags & HIST_FIELD_FL_KEY) {
kernel/trace/trace_events_hist.c
5102
field = hist_field->field;
kernel/trace/trace_events_hist.c
5104
if (hist_field->flags & HIST_FIELD_FL_STACKTRACE)
kernel/trace/trace_events_hist.c
5106
else if (!field || hist_field->flags & HIST_FIELD_FL_CPU)
kernel/trace/trace_events_hist.c
5107
cmp_fn = tracing_map_cmp_num(hist_field->size,
kernel/trace/trace_events_hist.c
5108
hist_field->is_signed);
kernel/trace/trace_events_hist.c
5115
hist_field->offset,
kernel/trace/trace_events_hist.c
5117
} else if (!(hist_field->flags & HIST_FIELD_FL_VAR))
kernel/trace/trace_events_hist.c
5123
if (hist_field->flags & HIST_FIELD_FL_VAR) {
kernel/trace/trace_events_hist.c
5127
hist_field->var.idx = idx;
kernel/trace/trace_events_hist.c
5128
hist_field->var.hist_data = hist_data;
kernel/trace/trace_events_hist.c
5197
struct hist_field *hist_field;
kernel/trace/trace_events_hist.c
5205
hist_field = hist_data->fields[i];
kernel/trace/trace_events_hist.c
5206
hist_val = hist_fn_call(hist_field, elt, buffer, rbe, rec);
kernel/trace/trace_events_hist.c
5207
if (hist_field->flags & HIST_FIELD_FL_VAR) {
kernel/trace/trace_events_hist.c
5208
var_idx = hist_field->var.idx;
kernel/trace/trace_events_hist.c
5210
if (hist_field->flags &
kernel/trace/trace_events_hist.c
5218
var_str_idx = hist_field->var_str_idx;
kernel/trace/trace_events_hist.c
5224
if (hist_field->flags & HIST_FIELD_FL_STRING) {
kernel/trace/trace_events_hist.c
5225
size = min(hist_field->size, STR_VAR_LEN_MAX);
kernel/trace/trace_events_hist.c
5247
hist_field = hist_data->fields[i];
kernel/trace/trace_events_hist.c
5248
if (hist_field->flags & HIST_FIELD_FL_VAR) {
kernel/trace/trace_events_hist.c
5249
hist_val = hist_fn_call(hist_field, elt, buffer, rbe, rec);
kernel/trace/trace_events_hist.c
5250
var_idx = hist_field->var.idx;
kernel/trace/trace_events_hist.c
5259
struct hist_field *key_field, void *rec)
kernel/trace/trace_events_hist.c
5387
struct hist_field *key_field;
kernel/trace/trace_events_hist.c
5479
struct hist_field *key_field;
kernel/trace/trace_events_hist.c
548
struct hist_field *var;
kernel/trace/trace_events_hist.c
549
struct hist_field *val;
kernel/trace/trace_events_hist.c
558
struct hist_field *fields[HIST_FIELDS_MAX];
kernel/trace/trace_events_hist.c
572
struct hist_field *var_refs[TRACING_MAP_VARS_MAX];
kernel/trace/trace_events_hist.c
5895
struct hist_field *field, unsigned long flags)
kernel/trace/trace_events_hist.c
5946
struct hist_field *field;
kernel/trace/trace_events_hist.c
6147
static void hist_field_print(struct seq_file *m, struct hist_field *hist_field)
kernel/trace/trace_events_hist.c
6149
const char *field_name = hist_field_name(hist_field, 0);
kernel/trace/trace_events_hist.c
6151
if (hist_field->var.name)
kernel/trace/trace_events_hist.c
6152
seq_printf(m, "%s=", hist_field->var.name);
kernel/trace/trace_events_hist.c
6154
if (hist_field->flags & HIST_FIELD_FL_CPU)
kernel/trace/trace_events_hist.c
6156
if (hist_field->flags & HIST_FIELD_FL_COMM)
kernel/trace/trace_events_hist.c
6158
else if (hist_field->flags & HIST_FIELD_FL_CONST)
kernel/trace/trace_events_hist.c
6159
seq_printf(m, "%llu", hist_field->constant);
kernel/trace/trace_events_hist.c
6161
if (hist_field->flags & HIST_FIELD_FL_VAR_REF ||
kernel/trace/trace_events_hist.c
6162
hist_field->flags & HIST_FIELD_FL_ALIAS)
kernel/trace/trace_events_hist.c
6163
if (!hist_field->system)
kernel/trace/trace_events_hist.c
6166
} else if (hist_field->flags & HIST_FIELD_FL_TIMESTAMP)
kernel/trace/trace_events_hist.c
6169
if (hist_field->flags) {
kernel/trace/trace_events_hist.c
6170
if (!(hist_field->flags & HIST_FIELD_FL_VAR_REF) &&
kernel/trace/trace_events_hist.c
6171
!(hist_field->flags & HIST_FIELD_FL_EXPR) &&
kernel/trace/trace_events_hist.c
6172
!(hist_field->flags & HIST_FIELD_FL_STACKTRACE)) {
kernel/trace/trace_events_hist.c
6173
const char *flags = get_hist_field_flags(hist_field);
kernel/trace/trace_events_hist.c
6179
if (hist_field->buckets)
kernel/trace/trace_events_hist.c
6180
seq_printf(m, "=%ld", hist_field->buckets);
kernel/trace/trace_events_hist.c
6187
struct hist_field *field;
kernel/trace/trace_events_hist.c
6430
struct hist_field *key_field, *key_field_test;
kernel/trace/trace_events_hist.c
655
struct hist_field *var_ref;
kernel/trace/trace_events_hist.c
662
struct hist_field *track_var;
kernel/trace/trace_events_hist.c
698
static enum hist_field_fn hist_field_get_div_fn(struct hist_field *divisor)
kernel/trace/trace_events_hist.c
85
struct hist_field;
kernel/trace/trace_events_hist.c
868
static u64 hist_field_timestamp(struct hist_field *hist_field,
kernel/trace/trace_events_hist.c
87
typedef u64 (*hist_field_fn_t) (struct hist_field *field,
kernel/trace/trace_events_hist.c
874
struct hist_trigger_data *hist_data = hist_field->hist_data;
kernel/trace/trace_events_hist.c
885
static u64 hist_field_cpu(struct hist_field *hist_field,
kernel/trace/trace_events_hist.c
896
static u64 hist_field_comm(struct hist_field *hist_field,
kernel/trace/trace_events_hist.c
916
static struct hist_field *
kernel/trace/trace_events_hist.c
917
check_field_for_var_ref(struct hist_field *hist_field,
kernel/trace/trace_events_hist.c
921
WARN_ON(!(hist_field && hist_field->flags & HIST_FIELD_FL_VAR_REF));
kernel/trace/trace_events_hist.c
923
if (hist_field && hist_field->var.idx == var_idx &&
kernel/trace/trace_events_hist.c
924
hist_field->var.hist_data == var_data)
kernel/trace/trace_events_hist.c
925
return hist_field;
kernel/trace/trace_events_hist.c
942
static struct hist_field *find_var_ref(struct hist_trigger_data *hist_data,
kernel/trace/trace_events_hist.c
946
struct hist_field *hist_field;
kernel/trace/trace_events_hist.c
950
hist_field = hist_data->var_refs[i];
kernel/trace/trace_events_hist.c
951
if (check_field_for_var_ref(hist_field, var_data, var_idx))
kernel/trace/trace_events_hist.c
952
return hist_field;
kernel/trace/trace_events_hist.c
972
static struct hist_field *find_any_var_ref(struct hist_trigger_data *hist_data,
kernel/trace/trace_events_hist.c
976
struct hist_field *found = NULL;