Symbol: hist_field
kernel/trace/trace_events_hist.c
1006
struct hist_field *field;
kernel/trace/trace_events_hist.c
1038
static bool field_has_hist_vars(struct hist_field *hist_field,
kernel/trace/trace_events_hist.c
1046
if (!hist_field)
kernel/trace/trace_events_hist.c
1049
if (hist_field->flags & HIST_FIELD_FL_VAR ||
kernel/trace/trace_events_hist.c
1050
hist_field->flags & HIST_FIELD_FL_VAR_REF)
kernel/trace/trace_events_hist.c
1054
struct hist_field *operand;
kernel/trace/trace_events_hist.c
1056
operand = hist_field->operands[i];
kernel/trace/trace_events_hist.c
1066
struct hist_field *hist_field;
kernel/trace/trace_events_hist.c
1070
hist_field = hist_data->fields[i];
kernel/trace/trace_events_hist.c
1071
if (field_has_hist_vars(hist_field, 0))
kernel/trace/trace_events_hist.c
1121
static struct hist_field *find_var_field(struct hist_trigger_data *hist_data,
kernel/trace/trace_events_hist.c
1124
struct hist_field *hist_field, *found = NULL;
kernel/trace/trace_events_hist.c
1128
hist_field = hist_data->fields[i];
kernel/trace/trace_events_hist.c
1129
if (hist_field && hist_field->flags & HIST_FIELD_FL_VAR &&
kernel/trace/trace_events_hist.c
1130
strcmp(hist_field->var.name, var_name) == 0) {
kernel/trace/trace_events_hist.c
1131
found = hist_field;
kernel/trace/trace_events_hist.c
1139
static struct hist_field *find_var(struct hist_trigger_data *hist_data,
kernel/trace/trace_events_hist.c
1145
struct hist_field *hist_field;
kernel/trace/trace_events_hist.c
1149
hist_field = find_var_field(hist_data, var_name);
kernel/trace/trace_events_hist.c
1150
if (hist_field)
kernel/trace/trace_events_hist.c
1151
return hist_field;
kernel/trace/trace_events_hist.c
1156
hist_field = find_var_field(test_data, var_name);
kernel/trace/trace_events_hist.c
1157
if (hist_field)
kernel/trace/trace_events_hist.c
1158
return hist_field;
kernel/trace/trace_events_hist.c
1196
static struct hist_field *find_file_var(struct trace_event_file *file,
kernel/trace/trace_events_hist.c
1201
struct hist_field *hist_field;
kernel/trace/trace_events_hist.c
1208
hist_field = find_var_field(test_data, var_name);
kernel/trace/trace_events_hist.c
1209
if (hist_field)
kernel/trace/trace_events_hist.c
1210
return hist_field;
kernel/trace/trace_events_hist.c
1217
static struct hist_field *
kernel/trace/trace_events_hist.c
1221
struct hist_field *hist_field, *found = NULL;
kernel/trace/trace_events_hist.c
1235
hist_field = find_file_var(file, var_name);
kernel/trace/trace_events_hist.c
1236
if (hist_field) {
kernel/trace/trace_events_hist.c
1243
found = hist_field;
kernel/trace/trace_events_hist.c
1250
static struct hist_field *find_event_var(struct hist_trigger_data *hist_data,
kernel/trace/trace_events_hist.c
1256
struct hist_field *hist_field = NULL;
kernel/trace/trace_events_hist.c
1260
hist_field = find_match_var(hist_data, var_name);
kernel/trace/trace_events_hist.c
1261
if (IS_ERR(hist_field))
kernel/trace/trace_events_hist.c
1263
if (hist_field)
kernel/trace/trace_events_hist.c
1264
return hist_field;
kernel/trace/trace_events_hist.c
1271
hist_field = find_file_var(file, var_name);
kernel/trace/trace_events_hist.c
1273
return hist_field;
kernel/trace/trace_events_hist.c
1276
static u64 hist_field_var_ref(struct hist_field *hist_field,
kernel/trace/trace_events_hist.c
1289
var_val = elt_data->var_ref_vals[hist_field->var_ref_idx];
kernel/trace/trace_events_hist.c
1299
struct hist_field *hist_field;
kernel/trace/trace_events_hist.c
1305
hist_field = hist_data->var_refs[i];
kernel/trace/trace_events_hist.c
1306
var_idx = hist_field->var.idx;
kernel/trace/trace_events_hist.c
1307
var_data = hist_field->var.hist_data;
kernel/trace/trace_events_hist.c
1329
if (self || !hist_field->read_once)
kernel/trace/trace_events_hist.c
1340
static const char *hist_field_name(struct hist_field *field,
kernel/trace/trace_events_hist.c
1648
struct hist_field *hist_field;
kernel/trace/trace_events_hist.c
1665
hist_field = hist_data->fields[i];
kernel/trace/trace_events_hist.c
1667
if (hist_field->flags & HIST_FIELD_FL_EXECNAME) {
kernel/trace/trace_events_hist.c
170
struct hist_field *operands[HIST_FIELD_OPERANDS_MAX];
kernel/trace/trace_events_hist.c
1706
static const char *get_hist_field_flags(struct hist_field *hist_field)
kernel/trace/trace_events_hist.c
1710
if (hist_field->flags & HIST_FIELD_FL_HEX)
kernel/trace/trace_events_hist.c
1712
else if (hist_field->flags & HIST_FIELD_FL_SYM)
kernel/trace/trace_events_hist.c
1714
else if (hist_field->flags & HIST_FIELD_FL_SYM_OFFSET)
kernel/trace/trace_events_hist.c
1716
else if (hist_field->flags & HIST_FIELD_FL_EXECNAME)
kernel/trace/trace_events_hist.c
1718
else if (hist_field->flags & HIST_FIELD_FL_SYSCALL)
kernel/trace/trace_events_hist.c
1720
else if (hist_field->flags & HIST_FIELD_FL_LOG2)
kernel/trace/trace_events_hist.c
1722
else if (hist_field->flags & HIST_FIELD_FL_BUCKET)
kernel/trace/trace_events_hist.c
1724
else if (hist_field->flags & HIST_FIELD_FL_TIMESTAMP_USECS)
kernel/trace/trace_events_hist.c
1726
else if (hist_field->flags & HIST_FIELD_FL_PERCENT)
kernel/trace/trace_events_hist.c
1728
else if (hist_field->flags & HIST_FIELD_FL_GRAPH)
kernel/trace/trace_events_hist.c
1730
else if (hist_field->flags & HIST_FIELD_FL_STACKTRACE)
kernel/trace/trace_events_hist.c
1736
static void expr_field_str(struct hist_field *field, char *expr)
kernel/trace/trace_events_hist.c
1760
static char *expr_str(struct hist_field *field, unsigned int level)
kernel/trace/trace_events_hist.c
1909
static void get_hist_field(struct hist_field *hist_field)
kernel/trace/trace_events_hist.c
1911
hist_field->ref++;
kernel/trace/trace_events_hist.c
1914
static void __destroy_hist_field(struct hist_field *hist_field)
kernel/trace/trace_events_hist.c
1916
if (--hist_field->ref > 1)
kernel/trace/trace_events_hist.c
1919
kfree(hist_field->var.name);
kernel/trace/trace_events_hist.c
1920
kfree(hist_field->name);
kernel/trace/trace_events_hist.c
1923
kfree_const(hist_field->type);
kernel/trace/trace_events_hist.c
1925
kfree(hist_field->system);
kernel/trace/trace_events_hist.c
1926
kfree(hist_field->event_name);
kernel/trace/trace_events_hist.c
1928
kfree(hist_field);
kernel/trace/trace_events_hist.c
1931
static void destroy_hist_field(struct hist_field *hist_field,
kernel/trace/trace_events_hist.c
1939
if (!hist_field)
kernel/trace/trace_events_hist.c
1942
if (hist_field->flags & HIST_FIELD_FL_VAR_REF)
kernel/trace/trace_events_hist.c
1946
destroy_hist_field(hist_field->operands[i], level + 1);
kernel/trace/trace_events_hist.c
1948
__destroy_hist_field(hist_field);
kernel/trace/trace_events_hist.c
1951
static struct hist_field *create_hist_field(struct hist_trigger_data *hist_data,
kernel/trace/trace_events_hist.c
1956
struct hist_field *hist_field;
kernel/trace/trace_events_hist.c
1961
hist_field = kzalloc_obj(struct hist_field);
kernel/trace/trace_events_hist.c
1962
if (!hist_field)
kernel/trace/trace_events_hist.c
1965
hist_field->ref = 1;
kernel/trace/trace_events_hist.c
1967
hist_field->hist_data = hist_data;
kernel/trace/trace_events_hist.c
1973
hist_field->fn_num = HIST_FIELD_FN_VAR_REF;
kernel/trace/trace_events_hist.c
1978
hist_field->fn_num = HIST_FIELD_FN_COUNTER;
kernel/trace/trace_events_hist.c
1979
hist_field->size = sizeof(u64);
kernel/trace/trace_events_hist.c
1980
hist_field->type = "u64";
kernel/trace/trace_events_hist.c
1985
hist_field->fn_num = HIST_FIELD_FN_CONST;
kernel/trace/trace_events_hist.c
1986
hist_field->size = sizeof(u64);
kernel/trace/trace_events_hist.c
1987
hist_field->type = kstrdup("u64", GFP_KERNEL);
kernel/trace/trace_events_hist.c
1988
if (!hist_field->type)
kernel/trace/trace_events_hist.c
1995
hist_field->fn_num = HIST_FIELD_FN_STACK;
kernel/trace/trace_events_hist.c
1997
hist_field->fn_num = HIST_FIELD_FN_NOP;
kernel/trace/trace_events_hist.c
1998
hist_field->size = HIST_STACKTRACE_SIZE;
kernel/trace/trace_events_hist.c
1999
hist_field->type = kstrdup_const("unsigned long[]", GFP_KERNEL);
kernel/trace/trace_events_hist.c
2000
if (!hist_field->type)
kernel/trace/trace_events_hist.c
2007
hist_field->fn_num = flags & HIST_FIELD_FL_LOG2 ? HIST_FIELD_FN_LOG2 :
kernel/trace/trace_events_hist.c
2009
hist_field->operands[0] = create_hist_field(hist_data, field, fl, NULL);
kernel/trace/trace_events_hist.c
2010
if (!hist_field->operands[0])
kernel/trace/trace_events_hist.c
2012
hist_field->size = hist_field->operands[0]->size;
kernel/trace/trace_events_hist.c
2013
hist_field->type = kstrdup_const(hist_field->operands[0]->type, GFP_KERNEL);
kernel/trace/trace_events_hist.c
2014
if (!hist_field->type)
kernel/trace/trace_events_hist.c
2020
hist_field->fn_num = HIST_FIELD_FN_TIMESTAMP;
kernel/trace/trace_events_hist.c
2021
hist_field->size = sizeof(u64);
kernel/trace/trace_events_hist.c
2022
hist_field->type = "u64";
kernel/trace/trace_events_hist.c
2027
hist_field->fn_num = HIST_FIELD_FN_CPU;
kernel/trace/trace_events_hist.c
2028
hist_field->size = sizeof(int);
kernel/trace/trace_events_hist.c
2029
hist_field->type = "unsigned int";
kernel/trace/trace_events_hist.c
2034
hist_field->fn_num = HIST_FIELD_FN_COMM;
kernel/trace/trace_events_hist.c
2035
hist_field->size = MAX_FILTER_STR_VAL;
kernel/trace/trace_events_hist.c
2036
hist_field->type = "char[]";
kernel/trace/trace_events_hist.c
2048
hist_field->size = MAX_FILTER_STR_VAL;
kernel/trace/trace_events_hist.c
2049
hist_field->type = kstrdup_const(field->type, GFP_KERNEL);
kernel/trace/trace_events_hist.c
2050
if (!hist_field->type)
kernel/trace/trace_events_hist.c
2054
hist_field->fn_num = HIST_FIELD_FN_STRING;
kernel/trace/trace_events_hist.c
2055
hist_field->size = field->size;
kernel/trace/trace_events_hist.c
2057
hist_field->fn_num = HIST_FIELD_FN_DYNSTRING;
kernel/trace/trace_events_hist.c
2059
hist_field->fn_num = HIST_FIELD_FN_RELDYNSTRING;
kernel/trace/trace_events_hist.c
2061
hist_field->fn_num = HIST_FIELD_FN_PSTRING;
kernel/trace/trace_events_hist.c
2065
hist_field->size = MAX_FILTER_STR_VAL;
kernel/trace/trace_events_hist.c
2066
hist_field->type = kstrdup_const(field->type, GFP_KERNEL);
kernel/trace/trace_events_hist.c
2067
if (!hist_field->type)
kernel/trace/trace_events_hist.c
2070
hist_field->fn_num = HIST_FIELD_FN_STACK;
kernel/trace/trace_events_hist.c
2072
hist_field->size = field->size;
kernel/trace/trace_events_hist.c
2073
hist_field->is_signed = field->is_signed;
kernel/trace/trace_events_hist.c
2074
hist_field->type = kstrdup_const(field->type, GFP_KERNEL);
kernel/trace/trace_events_hist.c
2075
if (!hist_field->type)
kernel/trace/trace_events_hist.c
2078
hist_field->fn_num = select_value_fn(field->size,
kernel/trace/trace_events_hist.c
2080
if (hist_field->fn_num == HIST_FIELD_FN_NOP) {
kernel/trace/trace_events_hist.c
2081
destroy_hist_field(hist_field, 0);
kernel/trace/trace_events_hist.c
2086
hist_field->field = field;
kernel/trace/trace_events_hist.c
2087
hist_field->flags = flags;
kernel/trace/trace_events_hist.c
2090
hist_field->var.name = kstrdup(var_name, GFP_KERNEL);
kernel/trace/trace_events_hist.c
2091
if (!hist_field->var.name)
kernel/trace/trace_events_hist.c
2095
return hist_field;
kernel/trace/trace_events_hist.c
2097
destroy_hist_field(hist_field, 0);
kernel/trace/trace_events_hist.c
211
static u64 hist_fn_call(struct hist_field *hist_field,
kernel/trace/trace_events_hist.c
2119
static int init_var_ref(struct hist_field *ref_field,
kernel/trace/trace_events_hist.c
2120
struct hist_field *var_field,
kernel/trace/trace_events_hist.c
217
static u64 hist_field_const(struct hist_field *field,
kernel/trace/trace_events_hist.c
2179
struct hist_field *var_field)
kernel/trace/trace_events_hist.c
2181
struct hist_field *ref_field;
kernel/trace/trace_events_hist.c
2209
static struct hist_field *create_var_ref(struct hist_trigger_data *hist_data,
kernel/trace/trace_events_hist.c
2210
struct hist_field *var_field,
kernel/trace/trace_events_hist.c
2214
struct hist_field *ref_field;
kernel/trace/trace_events_hist.c
226
static u64 hist_field_counter(struct hist_field *field,
kernel/trace/trace_events_hist.c
2298
static struct hist_field *parse_var_ref(struct hist_trigger_data *hist_data,
kernel/trace/trace_events_hist.c
2302
struct hist_field *var_field = NULL, *ref_field = NULL;
kernel/trace/trace_events_hist.c
235
static u64 hist_field_string(struct hist_field *hist_field,
kernel/trace/trace_events_hist.c
241
char *addr = (char *)(event + hist_field->field->offset);
kernel/trace/trace_events_hist.c
2429
static struct hist_field *create_alias(struct hist_trigger_data *hist_data,
kernel/trace/trace_events_hist.c
2430
struct hist_field *var_ref,
kernel/trace/trace_events_hist.c
2433
struct hist_field *alias = NULL;
kernel/trace/trace_events_hist.c
2453
static struct hist_field *parse_const(struct hist_trigger_data *hist_data,
kernel/trace/trace_events_hist.c
2458
struct hist_field *field = NULL;
kernel/trace/trace_events_hist.c
246
static u64 hist_field_dynstring(struct hist_field *hist_field,
kernel/trace/trace_events_hist.c
2476
static struct hist_field *parse_atom(struct hist_trigger_data *hist_data,
kernel/trace/trace_events_hist.c
2482
struct hist_field *hist_field = NULL;
kernel/trace/trace_events_hist.c
2487
hist_field = parse_const(hist_data, str, var_name, flags);
kernel/trace/trace_events_hist.c
2488
if (!hist_field) {
kernel/trace/trace_events_hist.c
2492
return hist_field;
kernel/trace/trace_events_hist.c
2515
hist_field = parse_var_ref(hist_data, ref_system,
kernel/trace/trace_events_hist.c
2517
if (hist_field) {
kernel/trace/trace_events_hist.c
2519
hist_field = create_alias(hist_data, hist_field, var_name);
kernel/trace/trace_events_hist.c
252
u32 str_item = *(u32 *)(event + hist_field->field->offset);
kernel/trace/trace_events_hist.c
2520
if (!hist_field) {
kernel/trace/trace_events_hist.c
2525
return hist_field;
kernel/trace/trace_events_hist.c
2536
hist_field = create_hist_field(hist_data, field, *flags, var_name);
kernel/trace/trace_events_hist.c
2537
if (!hist_field) {
kernel/trace/trace_events_hist.c
2541
hist_field->buckets = buckets;
kernel/trace/trace_events_hist.c
2543
return hist_field;
kernel/trace/trace_events_hist.c
2548
static struct hist_field *parse_expr(struct hist_trigger_data *hist_data,
kernel/trace/trace_events_hist.c
2553
static struct hist_field *parse_unary(struct hist_trigger_data *hist_data,
kernel/trace/trace_events_hist.c
2558
struct hist_field *operand1, *expr = NULL;
kernel/trace/trace_events_hist.c
259
static u64 hist_field_reldynstring(struct hist_field *hist_field,
kernel/trace/trace_events_hist.c
2646
struct hist_field *operand1,
kernel/trace/trace_events_hist.c
2647
struct hist_field *operand2,
kernel/trace/trace_events_hist.c
2648
struct hist_field **var1,
kernel/trace/trace_events_hist.c
2649
struct hist_field **var2)
kernel/trace/trace_events_hist.c
265
u32 *item = event + hist_field->field->offset;
kernel/trace/trace_events_hist.c
2656
struct hist_field *var;
kernel/trace/trace_events_hist.c
2667
struct hist_field *var;
kernel/trace/trace_events_hist.c
2685
static struct hist_field *parse_expr(struct hist_trigger_data *hist_data,
kernel/trace/trace_events_hist.c
2690
struct hist_field *operand1 = NULL, *operand2 = NULL, *expr = NULL;
kernel/trace/trace_events_hist.c
2691
struct hist_field *var1 = NULL, *var2 = NULL;
kernel/trace/trace_events_hist.c
273
static u64 hist_field_pstring(struct hist_field *hist_field,
kernel/trace/trace_events_hist.c
279
char **addr = (char **)(event + hist_field->field->offset);
kernel/trace/trace_events_hist.c
284
static u64 hist_field_log2(struct hist_field *hist_field,
kernel/trace/trace_events_hist.c
2896
struct hist_field *target_hist_field, *hist_field;
kernel/trace/trace_events_hist.c
290
struct hist_field *operand = hist_field->operands[0];
kernel/trace/trace_events_hist.c
2906
hist_field = hist_data->fields[i + n];
kernel/trace/trace_events_hist.c
2909
if (strcmp(hist_field->type, target_hist_field->type) != 0)
kernel/trace/trace_events_hist.c
2911
if (hist_field->size != target_hist_field->size)
kernel/trace/trace_events_hist.c
2913
if (hist_field->is_signed != target_hist_field->is_signed)
kernel/trace/trace_events_hist.c
2956
static struct hist_field *
kernel/trace/trace_events_hist.c
2960
struct hist_field *event_var;
kernel/trace/trace_events_hist.c
297
static u64 hist_field_bucket(struct hist_field *hist_field,
kernel/trace/trace_events_hist.c
3011
static struct hist_field *
kernel/trace/trace_events_hist.c
3020
struct hist_field *key_field;
kernel/trace/trace_events_hist.c
3021
struct hist_field *event_var;
kernel/trace/trace_events_hist.c
303
struct hist_field *operand = hist_field->operands[0];
kernel/trace/trace_events_hist.c
304
unsigned long buckets = hist_field->buckets;
kernel/trace/trace_events_hist.c
3138
static struct hist_field *
kernel/trace/trace_events_hist.c
3143
struct hist_field *hist_field = NULL;
kernel/trace/trace_events_hist.c
3160
hist_field = find_var_field(hist_data, var_name);
kernel/trace/trace_events_hist.c
3162
return hist_field;
kernel/trace/trace_events_hist.c
318
static u64 hist_field_plus(struct hist_field *hist_field,
kernel/trace/trace_events_hist.c
3182
struct hist_field *var = field_var->var;
kernel/trace/trace_events_hist.c
3183
struct hist_field *val = field_var->val;
kernel/trace/trace_events_hist.c
3234
static struct hist_field *create_var(struct hist_trigger_data *hist_data,
kernel/trace/trace_events_hist.c
3238
struct hist_field *var;
kernel/trace/trace_events_hist.c
324
struct hist_field *operand1 = hist_field->operands[0];
kernel/trace/trace_events_hist.c
3246
var = kzalloc_obj(struct hist_field);
kernel/trace/trace_events_hist.c
325
struct hist_field *operand2 = hist_field->operands[1];
kernel/trace/trace_events_hist.c
3280
struct hist_field *val = NULL, *var = NULL;
kernel/trace/trace_events_hist.c
333
static u64 hist_field_minus(struct hist_field *hist_field,
kernel/trace/trace_events_hist.c
339
struct hist_field *operand1 = hist_field->operands[0];
kernel/trace/trace_events_hist.c
340
struct hist_field *operand2 = hist_field->operands[1];
kernel/trace/trace_events_hist.c
348
static u64 hist_field_div(struct hist_field *hist_field,
kernel/trace/trace_events_hist.c
354
struct hist_field *operand1 = hist_field->operands[0];
kernel/trace/trace_events_hist.c
355
struct hist_field *operand2 = hist_field->operands[1];
kernel/trace/trace_events_hist.c
3562
struct hist_field *save_val = hist_data->save_vars[i]->val;
kernel/trace/trace_events_hist.c
3563
struct hist_field *save_var = hist_data->save_vars[i]->var;
kernel/trace/trace_events_hist.c
3640
struct hist_field *var_field, *ref_field, *track_var = NULL;
kernel/trace/trace_events_hist.c
371
static u64 div_by_power_of_two(struct hist_field *hist_field,
kernel/trace/trace_events_hist.c
377
struct hist_field *operand1 = hist_field->operands[0];
kernel/trace/trace_events_hist.c
378
struct hist_field *operand2 = hist_field->operands[1];
kernel/trace/trace_events_hist.c
385
static u64 div_by_not_power_of_two(struct hist_field *hist_field,
kernel/trace/trace_events_hist.c
391
struct hist_field *operand1 = hist_field->operands[0];
kernel/trace/trace_events_hist.c
3915
struct hist_field *hist_field,
kernel/trace/trace_events_hist.c
392
struct hist_field *operand2 = hist_field->operands[1];
kernel/trace/trace_events_hist.c
3930
if (strstr(hist_field->type, "char[") && field->is_string
kernel/trace/trace_events_hist.c
3934
if (strstr(hist_field->type, "long[") && field->is_stack)
kernel/trace/trace_events_hist.c
3937
if (strcmp(field->type, hist_field->type) != 0) {
kernel/trace/trace_events_hist.c
3938
if (field->size != hist_field->size ||
kernel/trace/trace_events_hist.c
3939
(!field->is_string && field->is_signed != hist_field->is_signed))
kernel/trace/trace_events_hist.c
3946
static struct hist_field *
kernel/trace/trace_events_hist.c
3952
struct hist_field *hist_field;
kernel/trace/trace_events_hist.c
3956
hist_field = find_target_event_var(hist_data, system, event, var);
kernel/trace/trace_events_hist.c
3957
if (!hist_field) {
kernel/trace/trace_events_hist.c
3963
hist_field = find_event_var(hist_data, system, event, var);
kernel/trace/trace_events_hist.c
3966
if (!hist_field)
kernel/trace/trace_events_hist.c
3969
return hist_field;
kernel/trace/trace_events_hist.c
3972
static struct hist_field *
kernel/trace/trace_events_hist.c
3977
struct hist_field *hist_field = NULL;
kernel/trace/trace_events_hist.c
399
static u64 div_by_mult_and_shift(struct hist_field *hist_field,
kernel/trace/trace_events_hist.c
3990
hist_field = field_var->var;
kernel/trace/trace_events_hist.c
4012
hist_field = create_field_var_hist(hist_data, system, event, var);
kernel/trace/trace_events_hist.c
4013
if (IS_ERR(hist_field))
kernel/trace/trace_events_hist.c
4017
return hist_field;
kernel/trace/trace_events_hist.c
4020
hist_field = NULL;
kernel/trace/trace_events_hist.c
4029
struct hist_field *hist_field, *var_ref;
kernel/trace/trace_events_hist.c
405
struct hist_field *operand1 = hist_field->operands[0];
kernel/trace/trace_events_hist.c
406
struct hist_field *operand2 = hist_field->operands[1];
kernel/trace/trace_events_hist.c
4078
hist_field = trace_action_find_var(hist_data, data,
kernel/trace/trace_events_hist.c
4082
hist_field = trace_action_create_field_var(hist_data,
kernel/trace/trace_events_hist.c
4088
if (!hist_field) {
kernel/trace/trace_events_hist.c
4094
if (check_synth_field(event, hist_field, field_pos) == 0) {
kernel/trace/trace_events_hist.c
4095
var_ref = create_var_ref(hist_data, hist_field,
kernel/trace/trace_events_hist.c
4279
struct hist_field *hist_field;
kernel/trace/trace_events_hist.c
4282
hist_field = parse_expr(hist_data, file, field_str, flags, var_name, &n_subexprs);
kernel/trace/trace_events_hist.c
4283
if (IS_ERR(hist_field)) {
kernel/trace/trace_events_hist.c
4284
ret = PTR_ERR(hist_field);
kernel/trace/trace_events_hist.c
4289
if (hist_field->flags & HIST_FIELD_FL_VAR) {
kernel/trace/trace_events_hist.c
4291
if (hist_field->flags & (HIST_FIELD_FL_GRAPH | HIST_FIELD_FL_PERCENT |
kernel/trace/trace_events_hist.c
4296
if (hist_field->flags & (HIST_FIELD_FL_GRAPH | HIST_FIELD_FL_PERCENT |
kernel/trace/trace_events_hist.c
4303
hist_data->fields[val_idx] = hist_field;
kernel/trace/trace_events_hist.c
433
static u64 hist_field_mult(struct hist_field *hist_field,
kernel/trace/trace_events_hist.c
4330
static u64 hist_field_execname(struct hist_field *hist_field,
kernel/trace/trace_events_hist.c
4349
static u64 hist_field_stack(struct hist_field *hist_field,
kernel/trace/trace_events_hist.c
4355
u32 str_item = *(u32 *)(event + hist_field->field->offset);
kernel/trace/trace_events_hist.c
4362
static u64 hist_fn_call(struct hist_field *hist_field,
kernel/trace/trace_events_hist.c
4368
switch (hist_field->fn_num) {
kernel/trace/trace_events_hist.c
4370
return hist_field_var_ref(hist_field, elt, buffer, rbe, event);
kernel/trace/trace_events_hist.c
4372
return hist_field_counter(hist_field, elt, buffer, rbe, event);
kernel/trace/trace_events_hist.c
4374
return hist_field_const(hist_field, elt, buffer, rbe, event);
kernel/trace/trace_events_hist.c
4376
return hist_field_log2(hist_field, elt, buffer, rbe, event);
kernel/trace/trace_events_hist.c
4378
return hist_field_bucket(hist_field, elt, buffer, rbe, event);
kernel/trace/trace_events_hist.c
4380
return hist_field_timestamp(hist_field, elt, buffer, rbe, event);
kernel/trace/trace_events_hist.c
4382
return hist_field_cpu(hist_field, elt, buffer, rbe, event);
kernel/trace/trace_events_hist.c
4384
return hist_field_comm(hist_field, elt, buffer, rbe, event);
kernel/trace/trace_events_hist.c
4386
return hist_field_string(hist_field, elt, buffer, rbe, event);
kernel/trace/trace_events_hist.c
4388
return hist_field_dynstring(hist_field, elt, buffer, rbe, event);
kernel/trace/trace_events_hist.c
439
struct hist_field *operand1 = hist_field->operands[0];
kernel/trace/trace_events_hist.c
4390
return hist_field_reldynstring(hist_field, elt, buffer, rbe, event);
kernel/trace/trace_events_hist.c
4392
return hist_field_pstring(hist_field, elt, buffer, rbe, event);
kernel/trace/trace_events_hist.c
4394
return hist_field_s64(hist_field, elt, buffer, rbe, event);
kernel/trace/trace_events_hist.c
4396
return hist_field_u64(hist_field, elt, buffer, rbe, event);
kernel/trace/trace_events_hist.c
4398
return hist_field_s32(hist_field, elt, buffer, rbe, event);
kernel/trace/trace_events_hist.c
440
struct hist_field *operand2 = hist_field->operands[1];
kernel/trace/trace_events_hist.c
4400
return hist_field_u32(hist_field, elt, buffer, rbe, event);
kernel/trace/trace_events_hist.c
4402
return hist_field_s16(hist_field, elt, buffer, rbe, event);
kernel/trace/trace_events_hist.c
4404
return hist_field_u16(hist_field, elt, buffer, rbe, event);
kernel/trace/trace_events_hist.c
4406
return hist_field_s8(hist_field, elt, buffer, rbe, event);
kernel/trace/trace_events_hist.c
4408
return hist_field_u8(hist_field, elt, buffer, rbe, event);
kernel/trace/trace_events_hist.c
4410
return hist_field_unary_minus(hist_field, elt, buffer, rbe, event);
kernel/trace/trace_events_hist.c
4412
return hist_field_minus(hist_field, elt, buffer, rbe, event);
kernel/trace/trace_events_hist.c
4414
return hist_field_plus(hist_field, elt, buffer, rbe, event);
kernel/trace/trace_events_hist.c
4416
return hist_field_div(hist_field, elt, buffer, rbe, event);
kernel/trace/trace_events_hist.c
4418
return hist_field_mult(hist_field, elt, buffer, rbe, event);
kernel/trace/trace_events_hist.c
4420
return div_by_power_of_two(hist_field, elt, buffer, rbe, event);
kernel/trace/trace_events_hist.c
4422
return div_by_not_power_of_two(hist_field, elt, buffer, rbe, event);
kernel/trace/trace_events_hist.c
4424
return div_by_mult_and_shift(hist_field, elt, buffer, rbe, event);
kernel/trace/trace_events_hist.c
4426
return hist_field_execname(hist_field, elt, buffer, rbe, event);
kernel/trace/trace_events_hist.c
4428
return hist_field_stack(hist_field, elt, buffer, rbe, event);
kernel/trace/trace_events_hist.c
4435
static void update_var_execname(struct hist_field *hist_field)
kernel/trace/trace_events_hist.c
4437
hist_field->flags = HIST_FIELD_FL_STRING | HIST_FIELD_FL_VAR |
kernel/trace/trace_events_hist.c
4439
hist_field->size = MAX_FILTER_STR_VAL;
kernel/trace/trace_events_hist.c
4440
hist_field->is_signed = 0;
kernel/trace/trace_events_hist.c
4442
kfree_const(hist_field->type);
kernel/trace/trace_events_hist.c
4443
hist_field->type = "char[]";
kernel/trace/trace_events_hist.c
4445
hist_field->fn_num = HIST_FIELD_FN_EXECNAME;
kernel/trace/trace_events_hist.c
448
static u64 hist_field_unary_minus(struct hist_field *hist_field,
kernel/trace/trace_events_hist.c
4532
struct hist_field *hist_field = NULL;
kernel/trace/trace_events_hist.c
454
struct hist_field *operand = hist_field->operands[0];
kernel/trace/trace_events_hist.c
4545
hist_field = create_hist_field(hist_data, NULL, flags, NULL);
kernel/trace/trace_events_hist.c
4547
hist_field = parse_expr(hist_data, file, field_str, flags,
kernel/trace/trace_events_hist.c
4549
if (IS_ERR(hist_field)) {
kernel/trace/trace_events_hist.c
4550
ret = PTR_ERR(hist_field);
kernel/trace/trace_events_hist.c
4554
if (field_has_hist_vars(hist_field, 0)) {
kernel/trace/trace_events_hist.c
4556
destroy_hist_field(hist_field, 0);
kernel/trace/trace_events_hist.c
4561
key_size = hist_field->size;
kernel/trace/trace_events_hist.c
4564
hist_data->fields[key_idx] = hist_field;
kernel/trace/trace_events_hist.c
463
static u64 hist_field_##type(struct hist_field *hist_field, \
kernel/trace/trace_events_hist.c
469
type *addr = (type *)(event + hist_field->field->offset); \
kernel/trace/trace_events_hist.c
4760
struct hist_field *hist_field;
kernel/trace/trace_events_hist.c
4802
hist_field = hist_data->fields[j];
kernel/trace/trace_events_hist.c
4803
if (hist_field->flags & HIST_FIELD_FL_VAR)
kernel/trace/trace_events_hist.c
4808
test_name = hist_field_name(hist_field, 0);
kernel/trace/trace_events_hist.c
5100
struct hist_field *hist_field;
kernel/trace/trace_events_hist.c
5104
hist_field = hist_data->fields[i];
kernel/trace/trace_events_hist.c
5105
if (hist_field->flags & HIST_FIELD_FL_KEY) {
kernel/trace/trace_events_hist.c
5108
field = hist_field->field;
kernel/trace/trace_events_hist.c
5110
if (hist_field->flags & HIST_FIELD_FL_STACKTRACE)
kernel/trace/trace_events_hist.c
5112
else if (!field || hist_field->flags & HIST_FIELD_FL_CPU)
kernel/trace/trace_events_hist.c
5113
cmp_fn = tracing_map_cmp_num(hist_field->size,
kernel/trace/trace_events_hist.c
5114
hist_field->is_signed);
kernel/trace/trace_events_hist.c
5121
hist_field->offset,
kernel/trace/trace_events_hist.c
5123
} else if (!(hist_field->flags & HIST_FIELD_FL_VAR))
kernel/trace/trace_events_hist.c
5129
if (hist_field->flags & HIST_FIELD_FL_VAR) {
kernel/trace/trace_events_hist.c
5133
hist_field->var.idx = idx;
kernel/trace/trace_events_hist.c
5134
hist_field->var.hist_data = hist_data;
kernel/trace/trace_events_hist.c
5203
struct hist_field *hist_field;
kernel/trace/trace_events_hist.c
5211
hist_field = hist_data->fields[i];
kernel/trace/trace_events_hist.c
5212
hist_val = hist_fn_call(hist_field, elt, buffer, rbe, rec);
kernel/trace/trace_events_hist.c
5213
if (hist_field->flags & HIST_FIELD_FL_VAR) {
kernel/trace/trace_events_hist.c
5214
var_idx = hist_field->var.idx;
kernel/trace/trace_events_hist.c
5216
if (hist_field->flags &
kernel/trace/trace_events_hist.c
5224
var_str_idx = hist_field->var_str_idx;
kernel/trace/trace_events_hist.c
5230
if (hist_field->flags & HIST_FIELD_FL_STRING) {
kernel/trace/trace_events_hist.c
5231
size = min(hist_field->size, STR_VAR_LEN_MAX);
kernel/trace/trace_events_hist.c
5253
hist_field = hist_data->fields[i];
kernel/trace/trace_events_hist.c
5254
if (hist_field->flags & HIST_FIELD_FL_VAR) {
kernel/trace/trace_events_hist.c
5255
hist_val = hist_fn_call(hist_field, elt, buffer, rbe, rec);
kernel/trace/trace_events_hist.c
5256
var_idx = hist_field->var.idx;
kernel/trace/trace_events_hist.c
5265
struct hist_field *key_field, void *rec)
kernel/trace/trace_events_hist.c
5393
struct hist_field *key_field;
kernel/trace/trace_events_hist.c
5485
struct hist_field *key_field;
kernel/trace/trace_events_hist.c
549
struct hist_field *var;
kernel/trace/trace_events_hist.c
550
struct hist_field *val;
kernel/trace/trace_events_hist.c
559
struct hist_field *fields[HIST_FIELDS_MAX];
kernel/trace/trace_events_hist.c
573
struct hist_field *var_refs[TRACING_MAP_VARS_MAX];
kernel/trace/trace_events_hist.c
5901
struct hist_field *field, unsigned long flags)
kernel/trace/trace_events_hist.c
5952
struct hist_field *field;
kernel/trace/trace_events_hist.c
6153
static void hist_field_print(struct seq_file *m, struct hist_field *hist_field)
kernel/trace/trace_events_hist.c
6155
const char *field_name = hist_field_name(hist_field, 0);
kernel/trace/trace_events_hist.c
6157
if (hist_field->var.name)
kernel/trace/trace_events_hist.c
6158
seq_printf(m, "%s=", hist_field->var.name);
kernel/trace/trace_events_hist.c
6160
if (hist_field->flags & HIST_FIELD_FL_CPU)
kernel/trace/trace_events_hist.c
6162
if (hist_field->flags & HIST_FIELD_FL_COMM)
kernel/trace/trace_events_hist.c
6164
else if (hist_field->flags & HIST_FIELD_FL_CONST)
kernel/trace/trace_events_hist.c
6165
seq_printf(m, "%llu", hist_field->constant);
kernel/trace/trace_events_hist.c
6167
if (hist_field->flags & HIST_FIELD_FL_VAR_REF ||
kernel/trace/trace_events_hist.c
6168
hist_field->flags & HIST_FIELD_FL_ALIAS)
kernel/trace/trace_events_hist.c
6169
if (!hist_field->system)
kernel/trace/trace_events_hist.c
6172
} else if (hist_field->flags & HIST_FIELD_FL_TIMESTAMP)
kernel/trace/trace_events_hist.c
6175
if (hist_field->flags) {
kernel/trace/trace_events_hist.c
6176
if (!(hist_field->flags & HIST_FIELD_FL_VAR_REF) &&
kernel/trace/trace_events_hist.c
6177
!(hist_field->flags & HIST_FIELD_FL_EXPR) &&
kernel/trace/trace_events_hist.c
6178
!(hist_field->flags & HIST_FIELD_FL_STACKTRACE)) {
kernel/trace/trace_events_hist.c
6179
const char *flags = get_hist_field_flags(hist_field);
kernel/trace/trace_events_hist.c
6185
if (hist_field->buckets)
kernel/trace/trace_events_hist.c
6186
seq_printf(m, "=%ld", hist_field->buckets);
kernel/trace/trace_events_hist.c
6193
struct hist_field *field;
kernel/trace/trace_events_hist.c
6438
struct hist_field *key_field, *key_field_test;
kernel/trace/trace_events_hist.c
656
struct hist_field *var_ref;
kernel/trace/trace_events_hist.c
663
struct hist_field *track_var;
kernel/trace/trace_events_hist.c
699
static enum hist_field_fn hist_field_get_div_fn(struct hist_field *divisor)
kernel/trace/trace_events_hist.c
86
struct hist_field;
kernel/trace/trace_events_hist.c
869
static u64 hist_field_timestamp(struct hist_field *hist_field,
kernel/trace/trace_events_hist.c
875
struct hist_trigger_data *hist_data = hist_field->hist_data;
kernel/trace/trace_events_hist.c
88
typedef u64 (*hist_field_fn_t) (struct hist_field *field,
kernel/trace/trace_events_hist.c
886
static u64 hist_field_cpu(struct hist_field *hist_field,
kernel/trace/trace_events_hist.c
897
static u64 hist_field_comm(struct hist_field *hist_field,
kernel/trace/trace_events_hist.c
917
static struct hist_field *
kernel/trace/trace_events_hist.c
918
check_field_for_var_ref(struct hist_field *hist_field,
kernel/trace/trace_events_hist.c
922
WARN_ON(!(hist_field && hist_field->flags & HIST_FIELD_FL_VAR_REF));
kernel/trace/trace_events_hist.c
924
if (hist_field && hist_field->var.idx == var_idx &&
kernel/trace/trace_events_hist.c
925
hist_field->var.hist_data == var_data)
kernel/trace/trace_events_hist.c
926
return hist_field;
kernel/trace/trace_events_hist.c
943
static struct hist_field *find_var_ref(struct hist_trigger_data *hist_data,
kernel/trace/trace_events_hist.c
947
struct hist_field *hist_field;
kernel/trace/trace_events_hist.c
951
hist_field = hist_data->var_refs[i];
kernel/trace/trace_events_hist.c
952
if (check_field_for_var_ref(hist_field, var_data, var_idx))
kernel/trace/trace_events_hist.c
953
return hist_field;
kernel/trace/trace_events_hist.c
973
static struct hist_field *find_any_var_ref(struct hist_trigger_data *hist_data,
kernel/trace/trace_events_hist.c
977
struct hist_field *found = NULL;