Lines Matching refs:track_data
658 } track_data; member
662 struct track_data { struct
705 static void track_data_free(struct track_data *track_data) in track_data_free() argument
709 if (!track_data) in track_data_free()
712 kfree(track_data->key); in track_data_free()
714 elt_data = track_data->elt.private_data; in track_data_free()
720 kfree(track_data); in track_data_free()
723 static struct track_data *track_data_alloc(unsigned int key_len, in track_data_alloc()
727 struct track_data *data = kzalloc(sizeof(*data), GFP_KERNEL); in track_data_alloc()
3337 unsigned int track_var_idx = data->track_data.track_var->var.idx; in get_track_val()
3349 unsigned int track_var_idx = data->track_data.track_var->var.idx; in save_track_val()
3360 if (data->track_data.save_data) in save_track_data()
3361 data->track_data.save_data(hist_data, elt, buffer, rec, rbe, in save_track_data()
3372 hist_data = data->track_data.track_var->hist_data; in check_track_val()
3375 return data->track_data.check_val(track_val, var_val); in check_track_val()
3382 struct track_data *track_data = tr->cond_snapshot->cond_data; in cond_snapshot_update() local
3388 if (!track_data) in cond_snapshot_update()
3391 action = track_data->action_data; in cond_snapshot_update()
3393 track_val = get_track_val(track_data->hist_data, context->elt, in cond_snapshot_update()
3394 track_data->action_data); in cond_snapshot_update()
3396 if (!action->track_data.check_val(track_data->track_val, track_val)) in cond_snapshot_update()
3399 track_data->track_val = track_val; in cond_snapshot_update()
3400 memcpy(track_data->key, context->key, track_data->key_len); in cond_snapshot_update()
3403 track_elt_data = track_data->elt.private_data; in cond_snapshot_update()
3407 track_data->updated = true; in cond_snapshot_update()
3454 struct track_data *track_data; in track_data_snapshot_print() local
3457 track_data = tracing_cond_snapshot_data(file->tr); in track_data_snapshot_print()
3458 if (!track_data) in track_data_snapshot_print()
3461 if (!track_data->updated) in track_data_snapshot_print()
3471 action->track_data.var_str, track_data->track_val); in track_data_snapshot_print()
3474 hist_trigger_print_key(m, hist_data, track_data->key, &track_data->elt); in track_data_snapshot_print()
3531 u64 var_val = var_ref_vals[data->track_data.var_ref->var_ref_idx]; in ontrack_action()
3564 destroy_hist_field(data->track_data.track_var, 0); in track_data_destroy()
3567 struct track_data *track_data; in track_data_destroy() local
3569 track_data = tracing_cond_snapshot_data(file->tr); in track_data_destroy()
3570 if (track_data && track_data->hist_data == hist_data) { in track_data_destroy()
3572 track_data_free(track_data); in track_data_destroy()
3576 kfree(data->track_data.var_str); in track_data_destroy()
3593 track_data_var_str = data->track_data.var_str; in track_data_create()
3610 data->track_data.var_ref = ref_field; in track_data_create()
3627 data->track_data.track_var = track_var; in track_data_create()
3715 data->track_data.check_val = check_track_val_max; in action_parse()
3717 data->track_data.check_val = check_track_val_changed; in action_parse()
3724 data->track_data.save_data = save_track_data_vars; in action_parse()
3737 data->track_data.check_val = check_track_val_max; in action_parse()
3739 data->track_data.check_val = check_track_val_changed; in action_parse()
3746 data->track_data.save_data = save_track_data_snapshot; in action_parse()
3762 data->track_data.check_val = check_track_val_max; in action_parse()
3764 data->track_data.check_val = check_track_val_changed; in action_parse()
3767 data->track_data.save_data = action_trace; in action_parse()
3803 data->track_data.var_str = kstrdup(var_str, GFP_KERNEL); in track_data_parse()
3804 if (!data->track_data.var_str) { in track_data_parse()
4090 struct track_data *track_data; in action_create() local
4100 track_data = track_data_alloc(hist_data->key_size, data, hist_data); in action_create()
4101 if (IS_ERR(track_data)) { in action_create()
4102 ret = PTR_ERR(track_data); in action_create()
4106 ret = tracing_snapshot_cond_enable(file->tr, track_data, in action_create()
4109 track_data_free(track_data); in action_create()
4919 seq_printf(m, "%s", data->track_data.var_str); in print_track_data_spec()
4989 if (strcmp(data->track_data.var_str, in actions_match()
4990 data_test->track_data.var_str) != 0) in actions_match()
5842 ret = hist_field_debug_show(m, data->track_data.var_ref, in hist_action_debug_show()
5848 ret = hist_field_debug_show(m, data->track_data.track_var, in hist_action_debug_show()