Lines Matching refs:event

54 #define do_warning_event(event, fmt, ...)			\  argument
59 if (event) \
60 warning("[%s:%s] " fmt, event->system, \
61 event->name, ##__VA_ARGS__); \
108 struct event_format *event, struct print_arg *arg);
691 static int add_event(struct pevent *pevent, struct event_format *event) in add_event() argument
694 struct event_format **events = realloc(pevent->events, sizeof(event) * in add_event()
702 if (pevent->events[i]->id > event->id) in add_event()
708 sizeof(event) * (pevent->nr_events - i)); in add_event()
710 pevent->events[i] = event; in add_event()
713 event->pevent = pevent; in add_event()
1300 static int event_read_fields(struct event_format *event, struct format_field **fields) in event_read_fields() argument
1328 if (event->flags & EVENT_FL_ISFTRACE && in event_read_fields()
1347 field->event = event; in event_read_fields()
1358 (event->flags & EVENT_FL_ISFTRACE && in event_read_fields()
1387 do_warning_event(event, "%s: no type found", __func__); in event_read_fields()
1434 do_warning_event(event, "failed to find token"); in event_read_fields()
1563 field->elementsize = event->pevent ? in event_read_fields()
1564 event->pevent->long_size : in event_read_fields()
1587 static int event_read_format(struct event_format *event) in event_read_format() argument
1602 ret = event_read_fields(event, &event->format.common_fields); in event_read_format()
1605 event->format.nr_common = ret; in event_read_format()
1607 ret = event_read_fields(event, &event->format.fields); in event_read_format()
1610 event->format.nr_fields = ret; in event_read_format()
1620 process_arg_token(struct event_format *event, struct print_arg *arg,
1624 process_arg(struct event_format *event, struct print_arg *arg, char **tok) in process_arg() argument
1632 return process_arg_token(event, arg, tok, type); in process_arg()
1636 process_op(struct event_format *event, struct print_arg *arg, char **tok);
1643 process_field_arg(struct event_format *event, struct print_arg *arg, char **tok) in process_field_arg() argument
1647 type = process_arg(event, arg, tok); in process_field_arg()
1650 type = process_op(event, arg, tok); in process_field_arg()
1657 process_cond(struct event_format *event, struct print_arg *top, char **tok) in process_cond() argument
1668 do_warning_event(event, "%s: not enough memory!", __func__); in process_cond()
1680 type = process_arg(event, left, &token); in process_cond()
1685 type = process_op(event, left, &token); in process_cond()
1694 type = process_arg(event, right, &token); in process_cond()
1710 process_array(struct event_format *event, struct print_arg *top, char **tok) in process_array() argument
1718 do_warning_event(event, "%s: not enough memory!", __func__); in process_array()
1725 type = process_arg(event, arg, &token); in process_array()
1812 process_op(struct event_format *event, struct print_arg *arg, char **tok) in process_op() argument
1824 do_warning_event(event, "bad op token %s", token); in process_op()
1834 do_warning_event(event, "bad op token %s", token); in process_op()
1855 type = process_arg(event, right, tok); in process_op()
1872 type = process_cond(event, arg, tok); in process_op()
1905 event->flags |= EVENT_FL_FAILED; in process_op()
1920 do_warning_event(event, "bad pointer type"); in process_op()
1941 type = process_arg_token(event, right, tok, type); in process_op()
1974 type = process_array(event, arg, tok); in process_op()
1977 do_warning_event(event, "unknown op '%s'", token); in process_op()
1978 event->flags |= EVENT_FL_FAILED; in process_op()
1990 return process_op(event, arg, tok); in process_op()
1992 return process_op(event, right, tok); in process_op()
1998 do_warning_event(event, "%s: not enough memory!", __func__); in process_op()
2006 process_entry(struct event_format *event __maybe_unused, struct print_arg *arg, in process_entry()
2024 arg->field.field = pevent_find_any_field(event, arg->field.name); in process_entry()
2028 arg->field.field = pevent_find_any_field(event, arg->field.name); in process_entry()
2045 static int alloc_and_process_delim(struct event_format *event, char *next_token, in alloc_and_process_delim() argument
2055 do_warning_event(event, "%s: not enough memory!", __func__); in alloc_and_process_delim()
2060 type = process_arg(event, field, &token); in alloc_and_process_delim()
2374 process_fields(struct event_format *event, struct print_flag_sym **list, char **tok) in process_fields() argument
2393 type = process_arg(event, arg, &token); in process_fields()
2396 type = process_op(event, arg, &token); in process_fields()
2421 type = process_arg(event, arg, &token); in process_fields()
2455 process_flags(struct event_format *event, struct print_arg *arg, char **tok) in process_flags() argument
2466 do_warning_event(event, "%s: not enough memory!", __func__); in process_flags()
2470 type = process_field_arg(event, field, &token); in process_flags()
2474 type = process_op(event, field, &token); in process_flags()
2491 type = process_fields(event, &arg->flags.flags, &token); in process_flags()
2508 process_symbols(struct event_format *event, struct print_arg *arg, char **tok) in process_symbols() argument
2519 do_warning_event(event, "%s: not enough memory!", __func__); in process_symbols()
2523 type = process_field_arg(event, field, &token); in process_symbols()
2530 type = process_fields(event, &arg->symbol.symbols, &token); in process_symbols()
2547 process_hex(struct event_format *event, struct print_arg *arg, char **tok) in process_hex() argument
2552 if (alloc_and_process_delim(event, ",", &arg->hex.field)) in process_hex()
2555 if (alloc_and_process_delim(event, ")", &arg->hex.size)) in process_hex()
2568 process_int_array(struct event_format *event, struct print_arg *arg, char **tok) in process_int_array() argument
2573 if (alloc_and_process_delim(event, ",", &arg->int_array.field)) in process_int_array()
2576 if (alloc_and_process_delim(event, ",", &arg->int_array.count)) in process_int_array()
2579 if (alloc_and_process_delim(event, ")", &arg->int_array.el_size)) in process_int_array()
2594 process_dynamic_array(struct event_format *event, struct print_arg *arg, char **tok) in process_dynamic_array() argument
2614 field = pevent_find_field(event, token); in process_dynamic_array()
2633 do_warning_event(event, "%s: not enough memory!", __func__); in process_dynamic_array()
2638 type = process_arg(event, arg, &token); in process_dynamic_array()
2658 process_paren(struct event_format *event, struct print_arg *arg, char **tok) in process_paren() argument
2664 type = process_arg(event, arg, &token); in process_paren()
2670 type = process_op(event, arg, &token); in process_paren()
2692 do_warning_event(event, "previous needed to be PRINT_ATOM"); in process_paren()
2698 do_warning_event(event, "%s: not enough memory!", in process_paren()
2706 type = process_arg_token(event, item_arg, &token, type); in process_paren()
2721 process_str(struct event_format *event __maybe_unused, struct print_arg *arg, in process_str()
2750 process_bitmask(struct event_format *event __maybe_unused, struct print_arg *arg, in process_bitmask()
2811 process_func_handler(struct event_format *event, struct pevent_function_handler *func, in process_func_handler() argument
2829 do_warning_event(event, "%s: not enough memory!", in process_func_handler()
2834 type = process_arg(event, farg, &token); in process_func_handler()
2837 do_warning_event(event, in process_func_handler()
2840 event->name, i + 1); in process_func_handler()
2845 do_warning_event(event, in process_func_handler()
2847 func->name, func->nr_args, event->name); in process_func_handler()
2869 process_function(struct event_format *event, struct print_arg *arg, in process_function() argument
2877 return process_flags(event, arg, tok); in process_function()
2882 return process_symbols(event, arg, tok); in process_function()
2886 return process_hex(event, arg, tok); in process_function()
2890 return process_int_array(event, arg, tok); in process_function()
2894 return process_str(event, arg, tok); in process_function()
2898 return process_bitmask(event, arg, tok); in process_function()
2902 return process_dynamic_array(event, arg, tok); in process_function()
2905 func = find_func_handler(event->pevent, token); in process_function()
2908 return process_func_handler(event, func, arg, tok); in process_function()
2911 do_warning_event(event, "function %s not defined", token); in process_function()
2917 process_arg_token(struct event_format *event, struct print_arg *arg, in process_arg_token() argument
2929 type = process_entry(event, arg, &token); in process_arg_token()
2944 type = process_function(event, arg, atom, &token); in process_arg_token()
2978 type = process_paren(event, arg, &token); in process_arg_token()
2986 type = process_op(event, arg, &token); in process_arg_token()
2997 do_warning_event(event, "unexpected type %d", type); in process_arg_token()
3005 static int event_read_print_args(struct event_format *event, struct print_arg **list) in event_read_print_args() argument
3020 do_warning_event(event, "%s: not enough memory!", in event_read_print_args()
3025 type = process_arg(event, arg, &token); in event_read_print_args()
3037 type = process_op(event, arg, &token); in event_read_print_args()
3063 static int event_read_print(struct event_format *event) in event_read_print() argument
3082 event->print_fmt.format = token; in event_read_print()
3083 event->print_fmt.args = NULL; in event_read_print()
3095 if (asprintf(&cat, "%s%s", event->print_fmt.format, token) < 0) in event_read_print()
3098 free_token(event->print_fmt.format); in event_read_print()
3099 event->print_fmt.format = NULL; in event_read_print()
3109 ret = event_read_print_args(event, &event->print_fmt.args); in event_read_print()
3129 pevent_find_common_field(struct event_format *event, const char *name) in pevent_find_common_field() argument
3133 for (format = event->format.common_fields; in pevent_find_common_field()
3151 pevent_find_field(struct event_format *event, const char *name) in pevent_find_field() argument
3155 for (format = event->format.fields; in pevent_find_field()
3174 pevent_find_any_field(struct event_format *event, const char *name) in pevent_find_any_field() argument
3178 format = pevent_find_common_field(event, name); in pevent_find_any_field()
3181 return pevent_find_field(event, name); in pevent_find_any_field()
3232 *value = pevent_read_number(field->event->pevent, in pevent_read_number_field()
3243 struct event_format *event; in get_common_info() local
3255 event = pevent->events[0]; in get_common_info()
3256 field = pevent_find_common_field(event, type); in get_common_info()
3366 struct event_format *event; in pevent_find_event_by_name() local
3375 event = pevent->events[i]; in pevent_find_event_by_name()
3376 if (strcmp(event->name, name) == 0) { in pevent_find_event_by_name()
3379 if (strcmp(event->system, sys) == 0) in pevent_find_event_by_name()
3384 event = NULL; in pevent_find_event_by_name()
3386 pevent->last_event = event; in pevent_find_event_by_name()
3387 return event; in pevent_find_event_by_name()
3391 eval_num_arg(void *data, int size, struct event_format *event, struct print_arg *arg) in eval_num_arg() argument
3393 struct pevent *pevent = event->pevent; in eval_num_arg()
3409 arg->field.field = pevent_find_any_field(event, arg->field.name); in eval_num_arg()
3424 val = eval_num_arg(data, size, event, arg->typecast.item); in eval_num_arg()
3433 val = process_defined_func(&s, data, size, event, arg); in eval_num_arg()
3443 right = eval_num_arg(data, size, event, arg->op.right); in eval_num_arg()
3474 pevent_find_any_field(event, larg->field.name); in eval_num_arg()
3493 left = eval_num_arg(data, size, event, arg->op.left); in eval_num_arg()
3496 val = eval_num_arg(data, size, event, arg->op.left); in eval_num_arg()
3498 val = eval_num_arg(data, size, event, arg->op.right); in eval_num_arg()
3502 left = eval_num_arg(data, size, event, arg->op.left); in eval_num_arg()
3503 right = eval_num_arg(data, size, event, arg->op.right); in eval_num_arg()
3603 do_warning_event(event, "%s: unknown op '%s'", __func__, arg->op.op); in eval_num_arg()
3607 do_warning_event(event, "%s: field %s not found", in eval_num_arg()
3716 struct event_format *event, const char *format, in print_str_arg() argument
3719 struct pevent *pevent = event->pevent; in print_str_arg()
3740 field = pevent_find_any_field(event, arg->field.name); in print_str_arg()
3785 do_warning_event(event, "%s: not enough memory!", in print_str_arg()
3795 val = eval_num_arg(data, size, event, arg->flags.field); in print_str_arg()
3813 val = eval_num_arg(data, size, event, arg->symbol.field); in print_str_arg()
3833 field = pevent_find_any_field(event, str); in print_str_arg()
3840 len = eval_num_arg(data, size, event, arg->hex.size); in print_str_arg()
3864 field = pevent_find_any_field(event, str); in print_str_arg()
3871 len = eval_num_arg(data, size, event, arg->int_array.count); in print_str_arg()
3872 el_size = eval_num_arg(data, size, event, in print_str_arg()
3904 f = pevent_find_any_field(event, arg->string.string); in print_str_arg()
3922 f = pevent_find_any_field(event, arg->bitmask.bitmask); in print_str_arg()
3938 val = eval_num_arg(data, size, event, arg->op.left); in print_str_arg()
3940 print_str_arg(s, data, size, event, in print_str_arg()
3943 print_str_arg(s, data, size, event, in print_str_arg()
3947 process_defined_func(s, data, size, event, arg); in print_str_arg()
3957 do_warning_event(event, "%s: field %s not found", in print_str_arg()
3963 struct event_format *event, struct print_arg *arg) in process_defined_func() argument
3995 args[i] = eval_num_arg(data, size, event, farg); in process_defined_func()
3999 print_str_arg(&str, data, size, event, "%s", -1, farg); in process_defined_func()
4003 do_warning_event(event, "%s(%d): malloc str", in process_defined_func()
4011 do_warning_event(event, "%s(%d): malloc str", in process_defined_func()
4024 do_warning_event(event, "Unexpected end of arguments\n"); in process_defined_func()
4058 …tic struct print_arg *make_bprint_args(char *fmt, void *data, int size, struct event_format *event) in make_bprint_args() argument
4060 struct pevent *pevent = event->pevent; in make_bprint_args()
4072 field = pevent_find_field(event, "buf"); in make_bprint_args()
4074 do_warning_event(event, "can't find buffer field for binary printk"); in make_bprint_args()
4077 ip_field = pevent_find_field(event, "ip"); in make_bprint_args()
4079 do_warning_event(event, "can't find ip field for binary printk"); in make_bprint_args()
4093 do_warning_event(event, "%s(%d): not enough memory!", in make_bprint_args()
4164 do_warning_event(event, "%s(%d): not enough memory!", in make_bprint_args()
4187 do_warning_event(event, "%s(%d): not enough memory!", in make_bprint_args()
4214 struct event_format *event) in get_bprint_format() argument
4216 struct pevent *pevent = event->pevent; in get_bprint_format()
4225 field = pevent_find_field(event, "fmt"); in get_bprint_format()
4227 do_warning_event(event, "can't find format field for binary printk"); in get_bprint_format()
4249 struct event_format *event, struct print_arg *arg) in print_mac_arg() argument
4255 process_defined_func(s, data, size, event, arg); in print_mac_arg()
4269 pevent_find_any_field(event, arg->field.name); in print_mac_arg()
4271 do_warning_event(event, "%s: field %s not found", in print_mac_arg()
4402 void *data, int size, struct event_format *event, in print_ipv4_arg() argument
4408 process_defined_func(s, data, size, event, arg); in print_ipv4_arg()
4419 pevent_find_any_field(event, arg->field.name); in print_ipv4_arg()
4439 void *data, int size, struct event_format *event, in print_ipv6_arg() argument
4454 process_defined_func(s, data, size, event, arg); in print_ipv6_arg()
4465 pevent_find_any_field(event, arg->field.name); in print_ipv6_arg()
4489 void *data, int size, struct event_format *event, in print_ipsa_arg() argument
4512 process_defined_func(s, data, size, event, arg); in print_ipsa_arg()
4523 pevent_find_any_field(event, arg->field.name); in print_ipsa_arg()
4571 void *data, int size, struct event_format *event, in print_ip_arg() argument
4587 rc += print_ipv4_arg(s, ptr, i, data, size, event, arg); in print_ip_arg()
4590 rc += print_ipv6_arg(s, ptr, i, data, size, event, arg); in print_ip_arg()
4593 rc += print_ipsa_arg(s, ptr, i, data, size, event, arg); in print_ip_arg()
4614 struct event_format *event) in print_event_fields() argument
4620 field = event->format.fields; in print_event_fields()
4627 val = pevent_read_number(event->pevent, data + offset, len); in print_event_fields()
4647 val = pevent_read_number(event->pevent, data + field->offset, in print_event_fields()
4683 static void pretty_print(struct trace_seq *s, void *data, int size, struct event_format *event) in pretty_print() argument
4685 struct pevent *pevent = event->pevent; in pretty_print()
4686 struct print_fmt *print_fmt = &event->print_fmt; in pretty_print()
4702 if (event->flags & EVENT_FL_FAILED) { in pretty_print()
4704 print_event_fields(s, data, size, event); in pretty_print()
4708 if (event->flags & EVENT_FL_ISBPRINT) { in pretty_print()
4709 bprint_fmt = get_bprint_format(data, size, event); in pretty_print()
4710 args = make_bprint_args(bprint_fmt, data, size, event); in pretty_print()
4762 do_warning_event(event, "no argument match"); in pretty_print()
4763 event->flags |= EVENT_FL_FAILED; in pretty_print()
4766 len_arg = eval_num_arg(data, size, event, arg); in pretty_print()
4786 print_mac_arg(s, *(ptr+1), data, size, event, arg); in pretty_print()
4793 n = print_ip_arg(s, ptr+1, data, size, event, arg); in pretty_print()
4808 do_warning_event(event, "no argument match"); in pretty_print()
4809 event->flags |= EVENT_FL_FAILED; in pretty_print()
4818 do_warning_event(event, "bad format!"); in pretty_print()
4819 event->flags |= EVENT_FL_FAILED; in pretty_print()
4826 val = eval_num_arg(data, size, event, arg); in pretty_print()
4884 do_warning_event(event, "bad count (%d)", ls); in pretty_print()
4885 event->flags |= EVENT_FL_FAILED; in pretty_print()
4890 do_warning_event(event, "no matching argument"); in pretty_print()
4891 event->flags |= EVENT_FL_FAILED; in pretty_print()
4900 do_warning_event(event, "bad format!"); in pretty_print()
4901 event->flags |= EVENT_FL_FAILED; in pretty_print()
4911 print_str_arg(&p, data, size, event, in pretty_print()
4926 if (event->flags & EVENT_FL_FAILED) { in pretty_print()
5171 void pevent_event_info(struct trace_seq *s, struct event_format *event, in pevent_event_info() argument
5176 if (event->pevent->print_raw || (event->flags & EVENT_FL_PRINTRAW)) in pevent_event_info()
5177 print_event_fields(s, record->data, record->size, event); in pevent_event_info()
5180 if (event->handler && !(event->flags & EVENT_FL_NOHANDLE)) in pevent_event_info()
5181 print_pretty = event->handler(s, record, event, in pevent_event_info()
5182 event->context); in pevent_event_info()
5185 pretty_print(s, record->data, record->size, event); in pevent_event_info()
5208 struct event_format *event; in pevent_print_event() local
5234 event = pevent_find_event(pevent, type); in pevent_print_event()
5235 if (!event) { in pevent_print_event()
5260 secs, p, usecs, event->name); in pevent_print_event()
5263 record->ts, event->name); in pevent_print_event()
5266 len = strlen(event->name); in pevent_print_event()
5270 pevent_event_info(s, event, record); in pevent_print_event()
5406 struct format_field **pevent_event_common_fields(struct event_format *event) in pevent_event_common_fields() argument
5408 return get_event_fields("common", event->name, in pevent_event_common_fields()
5409 event->format.nr_common, in pevent_event_common_fields()
5410 event->format.common_fields); in pevent_event_common_fields()
5420 struct format_field **pevent_event_fields(struct event_format *event) in pevent_event_fields() argument
5422 return get_event_fields("event", event->name, in pevent_event_fields()
5423 event->format.nr_fields, in pevent_event_fields()
5424 event->format.fields); in pevent_event_fields()
5655 static int event_matches(struct event_format *event, in event_matches() argument
5659 if (id >= 0 && id != event->id) in event_matches()
5662 if (event_name && (strcmp(event_name, event->name) != 0)) in event_matches()
5665 if (sys_name && (strcmp(sys_name, event->system) != 0)) in event_matches()
5678 static int find_event_handle(struct pevent *pevent, struct event_format *event) in find_event_handle() argument
5685 if (event_matches(event, handle->id, in find_event_handle()
5695 event->id, event->system, event->name); in find_event_handle()
5697 event->handler = handle->func; in find_event_handle()
5698 event->context = handle->context; in find_event_handle()
5723 struct event_format *event; in __pevent_parse_format() local
5728 *eventp = event = alloc_event(); in __pevent_parse_format()
5729 if (!event) in __pevent_parse_format()
5732 event->name = event_read_name(); in __pevent_parse_format()
5733 if (!event->name) { in __pevent_parse_format()
5740 event->flags |= EVENT_FL_ISFTRACE; in __pevent_parse_format()
5742 if (strcmp(event->name, "bprint") == 0) in __pevent_parse_format()
5743 event->flags |= EVENT_FL_ISBPRINT; in __pevent_parse_format()
5746 event->id = event_read_id(); in __pevent_parse_format()
5747 if (event->id < 0) { in __pevent_parse_format()
5756 event->system = strdup(sys); in __pevent_parse_format()
5757 if (!event->system) { in __pevent_parse_format()
5763 event->pevent = pevent; in __pevent_parse_format()
5765 ret = event_read_format(event); in __pevent_parse_format()
5775 if (pevent && find_event_handle(pevent, event)) in __pevent_parse_format()
5778 ret = event_read_print(event); in __pevent_parse_format()
5786 if (!ret && (event->flags & EVENT_FL_ISFTRACE)) { in __pevent_parse_format()
5791 list = &event->print_fmt.args; in __pevent_parse_format()
5792 for (field = event->format.fields; field; field = field->next) { in __pevent_parse_format()
5795 event->flags |= EVENT_FL_FAILED; in __pevent_parse_format()
5801 event->flags |= EVENT_FL_FAILED; in __pevent_parse_format()
5815 event->flags |= EVENT_FL_FAILED; in __pevent_parse_format()
5819 free(event->system); in __pevent_parse_format()
5820 free(event->name); in __pevent_parse_format()
5821 free(event); in __pevent_parse_format()
5833 struct event_format *event = *eventp; in __pevent_parse_event() local
5835 if (event == NULL) in __pevent_parse_event()
5838 if (pevent && add_event(pevent, event)) { in __pevent_parse_event()
5844 if (PRINT_ARGS && event->print_fmt.args) in __pevent_parse_event()
5845 print_args(event->print_fmt.args); in __pevent_parse_event()
5850 pevent_free_format(event); in __pevent_parse_event()
5894 struct event_format *event = NULL; in pevent_parse_event() local
5895 return __pevent_parse_event(pevent, &event, buf, size, sys); in pevent_parse_event()
5965 void *pevent_get_field_raw(struct trace_seq *s, struct event_format *event, in pevent_get_field_raw() argument
5974 if (!event) in pevent_get_field_raw()
5977 field = pevent_find_field(event, name); in pevent_get_field_raw()
5991 offset = pevent_read_number(event->pevent, in pevent_get_field_raw()
6012 int pevent_get_field_val(struct trace_seq *s, struct event_format *event, in pevent_get_field_val() argument
6018 if (!event) in pevent_get_field_val()
6021 field = pevent_find_field(event, name); in pevent_get_field_val()
6037 int pevent_get_common_field_val(struct trace_seq *s, struct event_format *event, in pevent_get_common_field_val() argument
6043 if (!event) in pevent_get_common_field_val()
6046 field = pevent_find_common_field(event, name); in pevent_get_common_field_val()
6062 int pevent_get_any_field_val(struct trace_seq *s, struct event_format *event, in pevent_get_any_field_val() argument
6068 if (!event) in pevent_get_any_field_val()
6071 field = pevent_find_any_field(event, name); in pevent_get_any_field_val()
6088 struct event_format *event, const char *name, in pevent_print_num_field() argument
6091 struct format_field *field = pevent_find_field(event, name); in pevent_print_num_field()
6120 struct event_format *event, const char *name, in pevent_print_func_field() argument
6123 struct format_field *field = pevent_find_field(event, name); in pevent_print_func_field()
6124 struct pevent *pevent = event->pevent; in pevent_print_func_field()
6284 struct event_format *event; in pevent_search_event() local
6288 event = pevent_find_event(pevent, id); in pevent_search_event()
6289 if (!event) in pevent_search_event()
6291 if (event_name && (strcmp(event_name, event->name) != 0)) in pevent_search_event()
6293 if (sys_name && (strcmp(sys_name, event->system) != 0)) in pevent_search_event()
6296 event = pevent_find_event_by_name(pevent, sys_name, event_name); in pevent_search_event()
6297 if (!event) in pevent_search_event()
6300 return event; in pevent_search_event()
6324 struct event_format *event; in pevent_register_event_handler() local
6327 event = pevent_search_event(pevent, id, sys_name, event_name); in pevent_register_event_handler()
6328 if (event == NULL) in pevent_register_event_handler()
6332 event->id, event->system, event->name); in pevent_register_event_handler()
6334 event->handler = func; in pevent_register_event_handler()
6335 event->context = context; in pevent_register_event_handler()
6408 struct event_format *event; in pevent_unregister_event_handler() local
6412 event = pevent_search_event(pevent, id, sys_name, event_name); in pevent_unregister_event_handler()
6413 if (event == NULL) in pevent_unregister_event_handler()
6416 if (event->handler == func && event->context == context) { in pevent_unregister_event_handler()
6418 event->id, event->system, event->name); in pevent_unregister_event_handler()
6420 event->handler = NULL; in pevent_unregister_event_handler()
6421 event->context = NULL; in pevent_unregister_event_handler()
6484 void pevent_free_format(struct event_format *event) in pevent_free_format() argument
6486 free(event->name); in pevent_free_format()
6487 free(event->system); in pevent_free_format()
6489 free_formats(&event->format); in pevent_free_format()
6491 free(event->print_fmt.format); in pevent_free_format()
6492 free_args(event->print_fmt.args); in pevent_free_format()
6494 free(event); in pevent_free_format()