Lines Matching refs:data

32 trigger_data_free(struct event_trigger_data *data)  in trigger_data_free()  argument
34 if (data->cmd_ops->set_filter) in trigger_data_free()
35 data->cmd_ops->set_filter(NULL, data, NULL); in trigger_data_free()
38 kfree(data); in trigger_data_free()
68 struct event_trigger_data *data; in event_triggers_call() local
75 list_for_each_entry_rcu(data, &file->triggers, list) { in event_triggers_call()
77 data->ops->func(data); in event_triggers_call()
80 filter = rcu_dereference_sched(data->filter); in event_triggers_call()
83 if (data->cmd_ops->post_trigger) { in event_triggers_call()
84 tt |= data->cmd_ops->trigger_type; in event_triggers_call()
87 data->ops->func(data); in event_triggers_call()
109 struct event_trigger_data *data; in event_triggers_post_call() local
111 list_for_each_entry_rcu(data, &file->triggers, list) { in event_triggers_post_call()
112 if (data->cmd_ops->trigger_type & tt) in event_triggers_post_call()
113 data->ops->func(data); in event_triggers_post_call()
153 struct event_trigger_data *data; in trigger_show() local
167 data = list_entry(v, struct event_trigger_data, list); in trigger_show()
168 data->ops->print(m, data->ops, data); in trigger_show()
372 void *data, char *filter_str) in event_trigger_print() argument
374 long count = (long)data; in event_trigger_print()
405 struct event_trigger_data *data) in event_trigger_init() argument
407 data->ref++; in event_trigger_init()
423 struct event_trigger_data *data) in event_trigger_free() argument
425 if (WARN_ON_ONCE(data->ref <= 0)) in event_trigger_free()
428 data->ref--; in event_trigger_free()
429 if (!data->ref) in event_trigger_free()
430 trigger_data_free(data); in event_trigger_free()
472 struct event_trigger_data *data; in clear_event_triggers() local
473 list_for_each_entry_rcu(data, &file->triggers, list) { in clear_event_triggers()
475 if (data->ops->free) in clear_event_triggers()
476 data->ops->free(data->ops, data); in clear_event_triggers()
493 struct event_trigger_data *data; in update_cond_flag() local
496 list_for_each_entry_rcu(data, &file->triggers, list) { in update_cond_flag()
497 if (data->filter || data->cmd_ops->post_trigger) { in update_cond_flag()
524 struct event_trigger_data *data, in register_trigger() argument
531 if (test->cmd_ops->trigger_type == data->cmd_ops->trigger_type) { in register_trigger()
537 if (data->ops->init) { in register_trigger()
538 ret = data->ops->init(data->ops, data); in register_trigger()
543 list_add_rcu(&data->list, &file->triggers); in register_trigger()
547 list_del_rcu(&data->list); in register_trigger()
571 struct event_trigger_data *data; in unregister_trigger() local
574 list_for_each_entry_rcu(data, &file->triggers, list) { in unregister_trigger()
575 if (data->cmd_ops->trigger_type == test->cmd_ops->trigger_type) { in unregister_trigger()
577 list_del_rcu(&data->list); in unregister_trigger()
584 if (unregistered && data->ops->free) in unregister_trigger()
585 data->ops->free(data->ops, data); in unregister_trigger()
707 struct event_trigger_data *data = trigger_data; in set_trigger_filter() local
728 tmp = rcu_access_pointer(data->filter); in set_trigger_filter()
730 rcu_assign_pointer(data->filter, filter); in set_trigger_filter()
738 kfree(data->filter_str); in set_trigger_filter()
739 data->filter_str = NULL; in set_trigger_filter()
742 data->filter_str = kstrdup(filter_str, GFP_KERNEL); in set_trigger_filter()
743 if (!data->filter_str) { in set_trigger_filter()
744 free_event_filter(rcu_access_pointer(data->filter)); in set_trigger_filter()
745 data->filter = NULL; in set_trigger_filter()
754 traceon_trigger(struct event_trigger_data *data) in traceon_trigger() argument
763 traceon_count_trigger(struct event_trigger_data *data) in traceon_count_trigger() argument
768 if (!data->count) in traceon_count_trigger()
771 if (data->count != -1) in traceon_count_trigger()
772 (data->count)--; in traceon_count_trigger()
778 traceoff_trigger(struct event_trigger_data *data) in traceoff_trigger() argument
787 traceoff_count_trigger(struct event_trigger_data *data) in traceoff_count_trigger() argument
792 if (!data->count) in traceoff_count_trigger()
795 if (data->count != -1) in traceoff_count_trigger()
796 (data->count)--; in traceoff_count_trigger()
803 struct event_trigger_data *data) in traceon_trigger_print() argument
805 return event_trigger_print("traceon", m, (void *)data->count, in traceon_trigger_print()
806 data->filter_str); in traceon_trigger_print()
811 struct event_trigger_data *data) in traceoff_trigger_print() argument
813 return event_trigger_print("traceoff", m, (void *)data->count, in traceoff_trigger_print()
814 data->filter_str); in traceoff_trigger_print()
883 snapshot_trigger(struct event_trigger_data *data) in snapshot_trigger() argument
889 snapshot_count_trigger(struct event_trigger_data *data) in snapshot_count_trigger() argument
891 if (!data->count) in snapshot_count_trigger()
894 if (data->count != -1) in snapshot_count_trigger()
895 (data->count)--; in snapshot_count_trigger()
897 snapshot_trigger(data); in snapshot_count_trigger()
902 struct event_trigger_data *data, in register_snapshot_trigger() argument
905 int ret = register_trigger(glob, ops, data, file); in register_snapshot_trigger()
908 unregister_trigger(glob, ops, data, file); in register_snapshot_trigger()
917 struct event_trigger_data *data) in snapshot_trigger_print() argument
919 return event_trigger_print("snapshot", m, (void *)data->count, in snapshot_trigger_print()
920 data->filter_str); in snapshot_trigger_print()
976 stacktrace_trigger(struct event_trigger_data *data) in stacktrace_trigger() argument
982 stacktrace_count_trigger(struct event_trigger_data *data) in stacktrace_count_trigger() argument
984 if (!data->count) in stacktrace_count_trigger()
987 if (data->count != -1) in stacktrace_count_trigger()
988 (data->count)--; in stacktrace_count_trigger()
990 stacktrace_trigger(data); in stacktrace_count_trigger()
995 struct event_trigger_data *data) in stacktrace_trigger_print() argument
997 return event_trigger_print("stacktrace", m, (void *)data->count, in stacktrace_trigger_print()
998 data->filter_str); in stacktrace_trigger_print()
1061 event_enable_trigger(struct event_trigger_data *data) in event_enable_trigger() argument
1063 struct enable_trigger_data *enable_data = data->private_data; in event_enable_trigger()
1072 event_enable_count_trigger(struct event_trigger_data *data) in event_enable_count_trigger() argument
1074 struct enable_trigger_data *enable_data = data->private_data; in event_enable_count_trigger()
1076 if (!data->count) in event_enable_count_trigger()
1083 if (data->count != -1) in event_enable_count_trigger()
1084 (data->count)--; in event_enable_count_trigger()
1086 event_enable_trigger(data); in event_enable_count_trigger()
1091 struct event_trigger_data *data) in event_enable_trigger_print() argument
1093 struct enable_trigger_data *enable_data = data->private_data; in event_enable_trigger_print()
1100 if (data->count == -1) in event_enable_trigger_print()
1103 seq_printf(m, ":count=%ld", data->count); in event_enable_trigger_print()
1105 if (data->filter_str) in event_enable_trigger_print()
1106 seq_printf(m, " if %s\n", data->filter_str); in event_enable_trigger_print()
1115 struct event_trigger_data *data) in event_enable_trigger_free() argument
1117 struct enable_trigger_data *enable_data = data->private_data; in event_enable_trigger_free()
1119 if (WARN_ON_ONCE(data->ref <= 0)) in event_enable_trigger_free()
1122 data->ref--; in event_enable_trigger_free()
1123 if (!data->ref) { in event_enable_trigger_free()
1127 trigger_data_free(data); in event_enable_trigger_free()
1296 struct event_trigger_data *data, in event_enable_register_trigger() argument
1299 struct enable_trigger_data *enable_data = data->private_data; in event_enable_register_trigger()
1313 if (data->ops->init) { in event_enable_register_trigger()
1314 ret = data->ops->init(data->ops, data); in event_enable_register_trigger()
1319 list_add_rcu(&data->list, &file->triggers); in event_enable_register_trigger()
1323 list_del_rcu(&data->list); in event_enable_register_trigger()
1338 struct event_trigger_data *data; in event_enable_unregister_trigger() local
1341 list_for_each_entry_rcu(data, &file->triggers, list) { in event_enable_unregister_trigger()
1342 enable_data = data->private_data; in event_enable_unregister_trigger()
1346 list_del_rcu(&data->list); in event_enable_unregister_trigger()
1353 if (unregistered && data->ops->free) in event_enable_unregister_trigger()
1354 data->ops->free(data->ops, data); in event_enable_unregister_trigger()