Lines Matching refs:arg
108 struct event_format *event, struct print_arg *arg);
807 static void free_arg(struct print_arg *arg) in free_arg() argument
811 if (!arg) in free_arg()
814 switch (arg->type) { in free_arg()
816 free(arg->atom.atom); in free_arg()
819 free(arg->field.name); in free_arg()
822 free_arg(arg->flags.field); in free_arg()
823 free(arg->flags.delim); in free_arg()
824 free_flag_sym(arg->flags.flags); in free_arg()
827 free_arg(arg->symbol.field); in free_arg()
828 free_flag_sym(arg->symbol.symbols); in free_arg()
831 free_arg(arg->hex.field); in free_arg()
832 free_arg(arg->hex.size); in free_arg()
835 free_arg(arg->int_array.field); in free_arg()
836 free_arg(arg->int_array.count); in free_arg()
837 free_arg(arg->int_array.el_size); in free_arg()
840 free(arg->typecast.type); in free_arg()
841 free_arg(arg->typecast.item); in free_arg()
845 free(arg->string.string); in free_arg()
848 free(arg->bitmask.bitmask); in free_arg()
852 free(arg->dynarray.index); in free_arg()
855 free(arg->op.op); in free_arg()
856 free_arg(arg->op.left); in free_arg()
857 free_arg(arg->op.right); in free_arg()
860 while (arg->func.args) { in free_arg()
861 farg = arg->func.args; in free_arg()
862 arg->func.args = farg->next; in free_arg()
872 free(arg); in free_arg()
1686 process_arg_token(struct event_format *event, struct print_arg *arg,
1690 process_arg(struct event_format *event, struct print_arg *arg, char **tok) in process_arg() argument
1698 return process_arg_token(event, arg, tok, type); in process_arg()
1702 process_op(struct event_format *event, struct print_arg *arg, char **tok);
1709 process_field_arg(struct event_format *event, struct print_arg *arg, char **tok) in process_field_arg() argument
1713 type = process_arg(event, arg, tok); in process_field_arg()
1716 type = process_op(event, arg, tok); in process_field_arg()
1725 struct print_arg *arg, *left, *right; in process_cond() local
1729 arg = alloc_arg(); in process_cond()
1733 if (!arg || !left || !right) { in process_cond()
1741 arg->type = PRINT_OP; in process_cond()
1742 arg->op.left = left; in process_cond()
1743 arg->op.right = right; in process_cond()
1761 arg->op.op = token; in process_cond()
1765 top->op.right = arg; in process_cond()
1774 free_arg(arg); in process_cond()
1781 struct print_arg *arg; in process_array() local
1785 arg = alloc_arg(); in process_array()
1786 if (!arg) { in process_array()
1794 type = process_arg(event, arg, &token); in process_array()
1798 top->op.right = arg; in process_array()
1808 free_arg(arg); in process_array()
1867 static int set_op_prio(struct print_arg *arg) in set_op_prio() argument
1871 if (!arg->op.left || arg->op.left->type == PRINT_NULL) in set_op_prio()
1872 arg->op.prio = 0; in set_op_prio()
1874 arg->op.prio = get_op_prio(arg->op.op); in set_op_prio()
1876 return arg->op.prio; in set_op_prio()
1881 process_op(struct event_format *event, struct print_arg *arg, char **tok) in process_op() argument
1890 if (arg->type == PRINT_OP && !arg->op.left) { in process_op()
1914 arg->op.left = left; in process_op()
1920 arg->op.right = right; in process_op()
1933 *left = *arg; in process_op()
1935 arg->type = PRINT_OP; in process_op()
1936 arg->op.op = token; in process_op()
1937 arg->op.left = left; in process_op()
1938 arg->op.prio = 0; in process_op()
1941 type = process_cond(event, arg, tok); in process_op()
1966 *left = *arg; in process_op()
1968 arg->type = PRINT_OP; in process_op()
1969 arg->op.op = token; in process_op()
1970 arg->op.left = left; in process_op()
1971 arg->op.right = NULL; in process_op()
1973 if (set_op_prio(arg) == -1) { in process_op()
1976 arg->op.op = NULL; in process_op()
1984 if ((strcmp(arg->op.op, "*") == 0) && in process_op()
1999 free(arg->op.op); in process_op()
2000 *arg = *left; in process_op()
2019 get_op_prio(arg->op.op) < get_op_prio(right->op.op)) { in process_op()
2023 arg->op.right = right->op.left; in process_op()
2025 tmp = *arg; in process_op()
2026 *arg = *right; in process_op()
2029 arg->op.left = right; in process_op()
2031 arg->op.right = right; in process_op()
2040 *left = *arg; in process_op()
2042 arg->type = PRINT_OP; in process_op()
2043 arg->op.op = token; in process_op()
2044 arg->op.left = left; in process_op()
2046 arg->op.prio = 0; in process_op()
2049 type = process_array(event, arg, tok); in process_op()
2064 if (prio > arg->op.prio) in process_op()
2065 return process_op(event, arg, tok); in process_op()
2081 process_entry(struct event_format *event __maybe_unused, struct print_arg *arg, in process_entry() argument
2095 arg->type = PRINT_FIELD; in process_entry()
2096 arg->field.name = field; in process_entry()
2099 arg->field.field = pevent_find_any_field(event, arg->field.name); in process_entry()
2100 arg->field.field->flags |= FIELD_IS_FLAG; in process_entry()
2103 arg->field.field = pevent_find_any_field(event, arg->field.name); in process_entry()
2104 arg->field.field->flags |= FIELD_IS_SYMBOLIC; in process_entry()
2152 static char *arg_eval (struct print_arg *arg);
2249 eval_type(unsigned long long val, struct print_arg *arg, int pointer) in eval_type() argument
2251 if (arg->type != PRINT_TYPE) { in eval_type()
2256 return eval_type_str(val, arg->typecast.type, pointer); in eval_type()
2259 static int arg_num_eval(struct print_arg *arg, long long *val) in arg_num_eval() argument
2264 switch (arg->type) { in arg_num_eval()
2266 *val = strtoll(arg->atom.atom, NULL, 0); in arg_num_eval()
2269 ret = arg_num_eval(arg->typecast.item, val); in arg_num_eval()
2272 *val = eval_type(*val, arg, 0); in arg_num_eval()
2275 switch (arg->op.op[0]) { in arg_num_eval()
2277 ret = arg_num_eval(arg->op.left, &left); in arg_num_eval()
2280 ret = arg_num_eval(arg->op.right, &right); in arg_num_eval()
2283 if (arg->op.op[1]) in arg_num_eval()
2289 ret = arg_num_eval(arg->op.left, &left); in arg_num_eval()
2292 ret = arg_num_eval(arg->op.right, &right); in arg_num_eval()
2295 if (arg->op.op[1]) in arg_num_eval()
2301 ret = arg_num_eval(arg->op.left, &left); in arg_num_eval()
2304 ret = arg_num_eval(arg->op.right, &right); in arg_num_eval()
2307 switch (arg->op.op[1]) { in arg_num_eval()
2318 do_warning("unknown op '%s'", arg->op.op); in arg_num_eval()
2323 ret = arg_num_eval(arg->op.left, &left); in arg_num_eval()
2326 ret = arg_num_eval(arg->op.right, &right); in arg_num_eval()
2329 switch (arg->op.op[1]) { in arg_num_eval()
2340 do_warning("unknown op '%s'", arg->op.op); in arg_num_eval()
2345 ret = arg_num_eval(arg->op.left, &left); in arg_num_eval()
2348 ret = arg_num_eval(arg->op.right, &right); in arg_num_eval()
2352 if (arg->op.op[1] != '=') { in arg_num_eval()
2353 do_warning("unknown op '%s'", arg->op.op); in arg_num_eval()
2359 ret = arg_num_eval(arg->op.left, &left); in arg_num_eval()
2362 ret = arg_num_eval(arg->op.right, &right); in arg_num_eval()
2366 switch (arg->op.op[1]) { in arg_num_eval()
2371 do_warning("unknown op '%s'", arg->op.op); in arg_num_eval()
2377 if (arg->op.left->type == PRINT_NULL) in arg_num_eval()
2380 ret = arg_num_eval(arg->op.left, &left); in arg_num_eval()
2383 ret = arg_num_eval(arg->op.right, &right); in arg_num_eval()
2389 if (arg->op.left->type == PRINT_NULL) in arg_num_eval()
2392 ret = arg_num_eval(arg->op.left, &left); in arg_num_eval()
2395 ret = arg_num_eval(arg->op.right, &right); in arg_num_eval()
2401 do_warning("unknown op '%s'", arg->op.op); in arg_num_eval()
2412 do_warning("invalid eval type %d", arg->type); in arg_num_eval()
2419 static char *arg_eval (struct print_arg *arg) in arg_eval() argument
2424 switch (arg->type) { in arg_eval()
2426 return arg->atom.atom; in arg_eval()
2428 return arg_eval(arg->typecast.item); in arg_eval()
2430 if (!arg_num_eval(arg, &val)) in arg_eval()
2441 do_warning("invalid eval type %d", arg->type); in arg_eval()
2452 struct print_arg *arg = NULL; in process_fields() local
2463 arg = alloc_arg(); in process_fields()
2464 if (!arg) in process_fields()
2468 type = process_arg(event, arg, &token); in process_fields()
2471 type = process_op(event, arg, &token); in process_fields()
2483 value = arg_eval(arg); in process_fields()
2490 free_arg(arg); in process_fields()
2491 arg = alloc_arg(); in process_fields()
2492 if (!arg) in process_fields()
2496 type = process_arg(event, arg, &token); in process_fields()
2500 value = arg_eval(arg); in process_fields()
2506 free_arg(arg); in process_fields()
2507 arg = NULL; in process_fields()
2522 free_arg(arg); in process_fields()
2530 process_flags(struct event_format *event, struct print_arg *arg, char **tok) in process_flags() argument
2536 memset(arg, 0, sizeof(*arg)); in process_flags()
2537 arg->type = PRINT_FLAGS; in process_flags()
2555 arg->flags.field = field; in process_flags()
2559 arg->flags.delim = token; in process_flags()
2566 type = process_fields(event, &arg->flags.flags, &token); in process_flags()
2583 process_symbols(struct event_format *event, struct print_arg *arg, char **tok) in process_symbols() argument
2589 memset(arg, 0, sizeof(*arg)); in process_symbols()
2590 arg->type = PRINT_SYMBOL; in process_symbols()
2603 arg->symbol.field = field; in process_symbols()
2605 type = process_fields(event, &arg->symbol.symbols, &token); in process_symbols()
2622 process_hex(struct event_format *event, struct print_arg *arg, char **tok) in process_hex() argument
2624 memset(arg, 0, sizeof(*arg)); in process_hex()
2625 arg->type = PRINT_HEX; in process_hex()
2627 if (alloc_and_process_delim(event, ",", &arg->hex.field)) in process_hex()
2630 if (alloc_and_process_delim(event, ")", &arg->hex.size)) in process_hex()
2636 free_arg(arg->hex.field); in process_hex()
2643 process_int_array(struct event_format *event, struct print_arg *arg, char **tok) in process_int_array() argument
2645 memset(arg, 0, sizeof(*arg)); in process_int_array()
2646 arg->type = PRINT_INT_ARRAY; in process_int_array()
2648 if (alloc_and_process_delim(event, ",", &arg->int_array.field)) in process_int_array()
2651 if (alloc_and_process_delim(event, ",", &arg->int_array.count)) in process_int_array()
2654 if (alloc_and_process_delim(event, ")", &arg->int_array.el_size)) in process_int_array()
2660 free_arg(arg->int_array.count); in process_int_array()
2662 free_arg(arg->int_array.field); in process_int_array()
2669 process_dynamic_array(struct event_format *event, struct print_arg *arg, char **tok) in process_dynamic_array() argument
2675 memset(arg, 0, sizeof(*arg)); in process_dynamic_array()
2676 arg->type = PRINT_DYNAMIC_ARRAY; in process_dynamic_array()
2693 arg->dynarray.field = field; in process_dynamic_array()
2694 arg->dynarray.index = 0; in process_dynamic_array()
2706 arg = alloc_arg(); in process_dynamic_array()
2707 if (!arg) { in process_dynamic_array()
2713 type = process_arg(event, arg, &token); in process_dynamic_array()
2725 free_arg(arg); in process_dynamic_array()
2733 process_dynamic_array_len(struct event_format *event, struct print_arg *arg, in process_dynamic_array_len() argument
2743 arg->type = PRINT_DYNAMIC_ARRAY_LEN; in process_dynamic_array_len()
2750 arg->dynarray.field = field; in process_dynamic_array_len()
2751 arg->dynarray.index = 0; in process_dynamic_array_len()
2769 process_paren(struct event_format *event, struct print_arg *arg, char **tok) in process_paren() argument
2775 type = process_arg(event, arg, &token); in process_paren()
2781 type = process_op(event, arg, &token); in process_paren()
2802 if (arg->type != PRINT_ATOM) { in process_paren()
2814 arg->type = PRINT_TYPE; in process_paren()
2815 arg->typecast.type = arg->atom.atom; in process_paren()
2816 arg->typecast.item = item_arg; in process_paren()
2832 process_str(struct event_format *event __maybe_unused, struct print_arg *arg, in process_str() argument
2841 arg->type = PRINT_STRING; in process_str()
2842 arg->string.string = token; in process_str()
2843 arg->string.offset = -1; in process_str()
2861 process_bitmask(struct event_format *event __maybe_unused, struct print_arg *arg, in process_bitmask() argument
2870 arg->type = PRINT_BITMASK; in process_bitmask()
2871 arg->bitmask.bitmask = token; in process_bitmask()
2872 arg->bitmask.offset = -1; in process_bitmask()
2923 struct print_arg *arg, char **tok) in process_func_handler() argument
2931 arg->type = PRINT_FUNC; in process_func_handler()
2932 arg->func.func = func; in process_func_handler()
2936 next_arg = &(arg->func.args); in process_func_handler()
2980 process_function(struct event_format *event, struct print_arg *arg, in process_function() argument
2988 return process_flags(event, arg, tok); in process_function()
2993 return process_symbols(event, arg, tok); in process_function()
2997 return process_hex(event, arg, tok); in process_function()
3001 return process_int_array(event, arg, tok); in process_function()
3005 return process_str(event, arg, tok); in process_function()
3009 return process_bitmask(event, arg, tok); in process_function()
3013 return process_dynamic_array(event, arg, tok); in process_function()
3017 return process_dynamic_array_len(event, arg, tok); in process_function()
3023 return process_func_handler(event, func, arg, tok); in process_function()
3032 process_arg_token(struct event_format *event, struct print_arg *arg, in process_arg_token() argument
3044 type = process_entry(event, arg, &token); in process_arg_token()
3059 type = process_function(event, arg, atom, &token); in process_arg_token()
3080 arg->type = PRINT_ATOM; in process_arg_token()
3081 arg->atom.atom = atom; in process_arg_token()
3086 arg->type = PRINT_ATOM; in process_arg_token()
3087 arg->atom.atom = token; in process_arg_token()
3093 type = process_paren(event, arg, &token); in process_arg_token()
3098 arg->type = PRINT_OP; in process_arg_token()
3099 arg->op.op = token; in process_arg_token()
3100 arg->op.left = NULL; in process_arg_token()
3101 type = process_op(event, arg, &token); in process_arg_token()
3105 arg->op.op = NULL; in process_arg_token()
3123 struct print_arg *arg; in event_read_print_args() local
3133 arg = alloc_arg(); in event_read_print_args()
3134 if (!arg) { in event_read_print_args()
3140 type = process_arg(event, arg, &token); in event_read_print_args()
3144 free_arg(arg); in event_read_print_args()
3148 *list = arg; in event_read_print_args()
3152 type = process_op(event, arg, &token); in event_read_print_args()
3156 free_arg(arg); in event_read_print_args()
3159 list = &arg->next; in event_read_print_args()
3165 *list = arg; in event_read_print_args()
3166 list = &arg->next; in event_read_print_args()
3506 eval_num_arg(void *data, int size, struct event_format *event, struct print_arg *arg) in eval_num_arg() argument
3516 switch (arg->type) { in eval_num_arg()
3521 return strtoull(arg->atom.atom, NULL, 0); in eval_num_arg()
3523 if (!arg->field.field) { in eval_num_arg()
3524 arg->field.field = pevent_find_any_field(event, arg->field.name); in eval_num_arg()
3525 if (!arg->field.field) in eval_num_arg()
3530 val = pevent_read_number(pevent, data + arg->field.field->offset, in eval_num_arg()
3531 arg->field.field->size); in eval_num_arg()
3539 val = eval_num_arg(data, size, event, arg->typecast.item); in eval_num_arg()
3540 return eval_type(val, arg, 0); in eval_num_arg()
3548 val = process_defined_func(&s, data, size, event, arg); in eval_num_arg()
3553 if (strcmp(arg->op.op, "[") == 0) { in eval_num_arg()
3558 right = eval_num_arg(data, size, event, arg->op.right); in eval_num_arg()
3561 larg = arg->op.left; in eval_num_arg()
3591 arg = larg; in eval_num_arg()
3607 } else if (strcmp(arg->op.op, "?") == 0) { in eval_num_arg()
3608 left = eval_num_arg(data, size, event, arg->op.left); in eval_num_arg()
3609 arg = arg->op.right; in eval_num_arg()
3611 val = eval_num_arg(data, size, event, arg->op.left); in eval_num_arg()
3613 val = eval_num_arg(data, size, event, arg->op.right); in eval_num_arg()
3617 left = eval_num_arg(data, size, event, arg->op.left); in eval_num_arg()
3618 right = eval_num_arg(data, size, event, arg->op.right); in eval_num_arg()
3619 switch (arg->op.op[0]) { in eval_num_arg()
3621 switch (arg->op.op[1]) { in eval_num_arg()
3636 if (arg->op.op[1]) in eval_num_arg()
3642 if (arg->op.op[1]) in eval_num_arg()
3648 switch (arg->op.op[1]) { in eval_num_arg()
3663 switch (arg->op.op[1]) { in eval_num_arg()
3678 if (arg->op.op[1] != '=') in eval_num_arg()
3701 data + arg->dynarray.field->offset, in eval_num_arg()
3702 arg->dynarray.field->size); in eval_num_arg()
3713 data + arg->dynarray.field->offset, in eval_num_arg()
3714 arg->dynarray.field->size); in eval_num_arg()
3729 do_warning_event(event, "%s: unknown op '%s'", __func__, arg->op.op); in eval_num_arg()
3734 __func__, arg->field.name); in eval_num_arg()
3843 int len_arg, struct print_arg *arg) in print_str_arg() argument
3856 switch (arg->type) { in print_str_arg()
3861 print_str_to_seq(s, format, len_arg, arg->atom.atom); in print_str_arg()
3864 field = arg->field.field; in print_str_arg()
3866 field = pevent_find_any_field(event, arg->field.name); in print_str_arg()
3868 str = arg->field.name; in print_str_arg()
3871 arg->field.field = field; in print_str_arg()
3921 val = eval_num_arg(data, size, event, arg->flags.field); in print_str_arg()
3923 for (flag = arg->flags.flags; flag; flag = flag->next) { in print_str_arg()
3930 if (print && arg->flags.delim) in print_str_arg()
3931 trace_seq_puts(s, arg->flags.delim); in print_str_arg()
3939 val = eval_num_arg(data, size, event, arg->symbol.field); in print_str_arg()
3940 for (flag = arg->symbol.symbols; flag; flag = flag->next) { in print_str_arg()
3949 if (arg->hex.field->type == PRINT_DYNAMIC_ARRAY) { in print_str_arg()
3952 data + arg->hex.field->dynarray.field->offset, in print_str_arg()
3953 arg->hex.field->dynarray.field->size); in print_str_arg()
3956 field = arg->hex.field->field.field; in print_str_arg()
3958 str = arg->hex.field->field.name; in print_str_arg()
3962 arg->hex.field->field.field = field; in print_str_arg()
3966 len = eval_num_arg(data, size, event, arg->hex.size); in print_str_arg()
3978 if (arg->int_array.field->type == PRINT_DYNAMIC_ARRAY) { in print_str_arg()
3981 arg->int_array.field->dynarray.field; in print_str_arg()
3987 field = arg->int_array.field->field.field; in print_str_arg()
3989 str = arg->int_array.field->field.name; in print_str_arg()
3993 arg->int_array.field->field.field = field; in print_str_arg()
3997 len = eval_num_arg(data, size, event, arg->int_array.count); in print_str_arg()
3999 arg->int_array.el_size); in print_str_arg()
4027 if (arg->string.offset == -1) { in print_str_arg()
4030 f = pevent_find_any_field(event, arg->string.string); in print_str_arg()
4031 arg->string.offset = f->offset; in print_str_arg()
4033 str_offset = data2host4(pevent, data + arg->string.offset); in print_str_arg()
4039 print_str_to_seq(s, format, len_arg, arg->string.string); in print_str_arg()
4045 if (arg->bitmask.offset == -1) { in print_str_arg()
4048 f = pevent_find_any_field(event, arg->bitmask.bitmask); in print_str_arg()
4049 arg->bitmask.offset = f->offset; in print_str_arg()
4051 bitmask_offset = data2host4(pevent, data + arg->bitmask.offset); in print_str_arg()
4062 if (arg->op.op[0] != '?') in print_str_arg()
4064 val = eval_num_arg(data, size, event, arg->op.left); in print_str_arg()
4067 format, len_arg, arg->op.right->op.left); in print_str_arg()
4070 format, len_arg, arg->op.right->op.right); in print_str_arg()
4073 process_defined_func(s, data, size, event, arg); in print_str_arg()
4084 __func__, arg->field.name); in print_str_arg()
4089 struct event_format *event, struct print_arg *arg) in process_defined_func() argument
4091 struct pevent_function_handler *func_handle = arg->func.func; in process_defined_func()
4108 farg = arg->func.args; in process_defined_func()
4188 struct print_arg *args, *arg, **next; in make_bprint_args() local
4223 arg = args; in make_bprint_args()
4224 arg->next = NULL; in make_bprint_args()
4225 next = &arg->next; in make_bprint_args()
4227 arg->type = PRINT_ATOM; in make_bprint_args()
4229 if (asprintf(&arg->atom.atom, "%lld", ip) < 0) in make_bprint_args()
4288 arg = alloc_arg(); in make_bprint_args()
4289 if (!arg) { in make_bprint_args()
4294 arg->next = NULL; in make_bprint_args()
4295 arg->type = PRINT_ATOM; in make_bprint_args()
4296 if (asprintf(&arg->atom.atom, "%lld", val) < 0) { in make_bprint_args()
4297 free(arg); in make_bprint_args()
4300 *next = arg; in make_bprint_args()
4301 next = &arg->next; in make_bprint_args()
4311 arg = alloc_arg(); in make_bprint_args()
4312 if (!arg) { in make_bprint_args()
4317 arg->next = NULL; in make_bprint_args()
4318 arg->type = PRINT_BSTRING; in make_bprint_args()
4319 arg->string.string = strdup(bptr); in make_bprint_args()
4320 if (!arg->string.string) in make_bprint_args()
4323 *next = arg; in make_bprint_args()
4324 next = &arg->next; in make_bprint_args()
4375 struct event_format *event, struct print_arg *arg) in print_mac_arg() argument
4380 if (arg->type == PRINT_FUNC) { in print_mac_arg()
4381 process_defined_func(s, data, size, event, arg); in print_mac_arg()
4385 if (arg->type != PRINT_FIELD) { in print_mac_arg()
4387 arg->type); in print_mac_arg()
4393 if (!arg->field.field) { in print_mac_arg()
4394 arg->field.field = in print_mac_arg()
4395 pevent_find_any_field(event, arg->field.name); in print_mac_arg()
4396 if (!arg->field.field) { in print_mac_arg()
4398 __func__, arg->field.name); in print_mac_arg()
4402 if (arg->field.field->size != 6) { in print_mac_arg()
4406 buf = data + arg->field.field->offset; in print_mac_arg()
4529 struct print_arg *arg) in print_ipv4_arg() argument
4533 if (arg->type == PRINT_FUNC) { in print_ipv4_arg()
4534 process_defined_func(s, data, size, event, arg); in print_ipv4_arg()
4538 if (arg->type != PRINT_FIELD) { in print_ipv4_arg()
4539 trace_seq_printf(s, "ARG TYPE NOT FIELD BUT %d", arg->type); in print_ipv4_arg()
4543 if (!arg->field.field) { in print_ipv4_arg()
4544 arg->field.field = in print_ipv4_arg()
4545 pevent_find_any_field(event, arg->field.name); in print_ipv4_arg()
4546 if (!arg->field.field) { in print_ipv4_arg()
4548 __func__, arg->field.name); in print_ipv4_arg()
4553 buf = data + arg->field.field->offset; in print_ipv4_arg()
4555 if (arg->field.field->size != 4) { in print_ipv4_arg()
4566 struct print_arg *arg) in print_ipv6_arg() argument
4579 if (arg->type == PRINT_FUNC) { in print_ipv6_arg()
4580 process_defined_func(s, data, size, event, arg); in print_ipv6_arg()
4584 if (arg->type != PRINT_FIELD) { in print_ipv6_arg()
4585 trace_seq_printf(s, "ARG TYPE NOT FIELD BUT %d", arg->type); in print_ipv6_arg()
4589 if (!arg->field.field) { in print_ipv6_arg()
4590 arg->field.field = in print_ipv6_arg()
4591 pevent_find_any_field(event, arg->field.name); in print_ipv6_arg()
4592 if (!arg->field.field) { in print_ipv6_arg()
4594 __func__, arg->field.name); in print_ipv6_arg()
4599 buf = data + arg->field.field->offset; in print_ipv6_arg()
4601 if (arg->field.field->size != 16) { in print_ipv6_arg()
4616 struct print_arg *arg) in print_ipsa_arg() argument
4637 if (arg->type == PRINT_FUNC) { in print_ipsa_arg()
4638 process_defined_func(s, data, size, event, arg); in print_ipsa_arg()
4642 if (arg->type != PRINT_FIELD) { in print_ipsa_arg()
4643 trace_seq_printf(s, "ARG TYPE NOT FIELD BUT %d", arg->type); in print_ipsa_arg()
4647 if (!arg->field.field) { in print_ipsa_arg()
4648 arg->field.field = in print_ipsa_arg()
4649 pevent_find_any_field(event, arg->field.name); in print_ipsa_arg()
4650 if (!arg->field.field) { in print_ipsa_arg()
4652 __func__, arg->field.name); in print_ipsa_arg()
4657 sa = (struct sockaddr_storage *) (data + arg->field.field->offset); in print_ipsa_arg()
4662 if (arg->field.field->size < sizeof(struct sockaddr_in)) { in print_ipsa_arg()
4675 if (arg->field.field->size < sizeof(struct sockaddr_in6)) { in print_ipsa_arg()
4698 struct print_arg *arg) in print_ip_arg() argument
4713 rc += print_ipv4_arg(s, ptr, i, data, size, event, arg); in print_ip_arg()
4716 rc += print_ipv6_arg(s, ptr, i, data, size, event, arg); in print_ip_arg()
4719 rc += print_ipsa_arg(s, ptr, i, data, size, event, arg); in print_ip_arg()
4813 struct print_arg *arg = print_fmt->args; in pretty_print() local
4837 arg = args; in pretty_print()
4887 if (!arg) { in pretty_print()
4892 len_arg = eval_num_arg(data, size, event, arg); in pretty_print()
4894 arg = arg->next; in pretty_print()
4913 print_mac_arg(s, *(ptr+1), data, size, event, arg); in pretty_print()
4915 arg = arg->next; in pretty_print()
4920 n = print_ip_arg(s, ptr+1, data, size, event, arg); in pretty_print()
4923 arg = arg->next; in pretty_print()
4934 if (!arg) { in pretty_print()
4953 val = eval_num_arg(data, size, event, arg); in pretty_print()
4954 arg = arg->next; in pretty_print()
5016 if (!arg) { in pretty_print()
5039 format, len_arg, arg); in pretty_print()
5043 arg = arg->next; in pretty_print()
5915 struct print_arg *arg, **list; in __pevent_parse_format() local
5920 arg = alloc_arg(); in __pevent_parse_format()
5921 if (!arg) { in __pevent_parse_format()
5925 arg->type = PRINT_FIELD; in __pevent_parse_format()
5926 arg->field.name = strdup(field->name); in __pevent_parse_format()
5927 if (!arg->field.name) { in __pevent_parse_format()
5929 free_arg(arg); in __pevent_parse_format()
5932 arg->field.field = field; in __pevent_parse_format()
5933 *list = arg; in __pevent_parse_format()
5934 list = &arg->next; in __pevent_parse_format()