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()
3347 unsigned int track_var_idx = data->track_data.track_var->var.idx; in get_track_val()
3359 unsigned int track_var_idx = data->track_data.track_var->var.idx; in save_track_val()
3370 if (data->track_data.save_data) in save_track_data()
3371 data->track_data.save_data(hist_data, elt, buffer, rec, rbe, in save_track_data()
3382 hist_data = data->track_data.track_var->hist_data; in check_track_val()
3385 return data->track_data.check_val(track_val, var_val); in check_track_val()
3392 struct track_data *track_data = tr->cond_snapshot->cond_data; in cond_snapshot_update() local
3398 if (!track_data) in cond_snapshot_update()
3401 action = track_data->action_data; in cond_snapshot_update()
3403 track_val = get_track_val(track_data->hist_data, context->elt, in cond_snapshot_update()
3404 track_data->action_data); in cond_snapshot_update()
3406 if (!action->track_data.check_val(track_data->track_val, track_val)) in cond_snapshot_update()
3409 track_data->track_val = track_val; in cond_snapshot_update()
3410 memcpy(track_data->key, context->key, track_data->key_len); in cond_snapshot_update()
3413 track_elt_data = track_data->elt.private_data; in cond_snapshot_update()
3417 track_data->updated = true; in cond_snapshot_update()
3464 struct track_data *track_data; in track_data_snapshot_print() local
3467 track_data = tracing_cond_snapshot_data(file->tr); in track_data_snapshot_print()
3468 if (!track_data) in track_data_snapshot_print()
3471 if (!track_data->updated) in track_data_snapshot_print()
3481 action->track_data.var_str, track_data->track_val); in track_data_snapshot_print()
3484 hist_trigger_print_key(m, hist_data, track_data->key, &track_data->elt); in track_data_snapshot_print()
3541 u64 var_val = var_ref_vals[data->track_data.var_ref->var_ref_idx]; in ontrack_action()
3574 destroy_hist_field(data->track_data.track_var, 0); in track_data_destroy()
3577 struct track_data *track_data; in track_data_destroy() local
3579 track_data = tracing_cond_snapshot_data(file->tr); in track_data_destroy()
3580 if (track_data && track_data->hist_data == hist_data) { in track_data_destroy()
3582 track_data_free(track_data); in track_data_destroy()
3586 kfree(data->track_data.var_str); in track_data_destroy()
3603 track_data_var_str = data->track_data.var_str; in track_data_create()
3620 data->track_data.var_ref = ref_field; in track_data_create()
3637 data->track_data.track_var = track_var; in track_data_create()
3725 data->track_data.check_val = check_track_val_max; in action_parse()
3727 data->track_data.check_val = check_track_val_changed; in action_parse()
3734 data->track_data.save_data = save_track_data_vars; in action_parse()
3747 data->track_data.check_val = check_track_val_max; in action_parse()
3749 data->track_data.check_val = check_track_val_changed; in action_parse()
3756 data->track_data.save_data = save_track_data_snapshot; in action_parse()
3772 data->track_data.check_val = check_track_val_max; in action_parse()
3774 data->track_data.check_val = check_track_val_changed; in action_parse()
3777 data->track_data.save_data = action_trace; in action_parse()
3813 data->track_data.var_str = kstrdup(var_str, GFP_KERNEL); in track_data_parse()
3814 if (!data->track_data.var_str) { in track_data_parse()
4100 struct track_data *track_data; in action_create() local
4110 track_data = track_data_alloc(hist_data->key_size, data, hist_data); in action_create()
4111 if (IS_ERR(track_data)) { in action_create()
4112 ret = PTR_ERR(track_data); in action_create()
4116 ret = tracing_snapshot_cond_enable(file->tr, track_data, in action_create()
4119 track_data_free(track_data); in action_create()
4930 seq_printf(m, "%s", data->track_data.var_str); in print_track_data_spec()
5000 if (strcmp(data->track_data.var_str, in actions_match()
5001 data_test->track_data.var_str) != 0) in actions_match()
5761 ret = hist_field_debug_show(m, data->track_data.var_ref, in hist_action_debug_show()
5767 ret = hist_field_debug_show(m, data->track_data.track_var, in hist_action_debug_show()