Lines Matching refs:priv
125 struct bpf_prog_priv *priv = _priv; in clear_prog_priv() local
127 cleanup_perf_probe_events(&priv->pev, 1); in clear_prog_priv()
128 zfree(&priv->insns_buf); in clear_prog_priv()
129 zfree(&priv->type_mapping); in clear_prog_priv()
130 zfree(&priv->sys_name); in clear_prog_priv()
131 zfree(&priv->evt_name); in clear_prog_priv()
132 free(priv); in clear_prog_priv()
322 struct bpf_prog_priv *priv = NULL; in config_bpf_program() local
331 priv = calloc(sizeof(*priv), 1); in config_bpf_program()
332 if (!priv) { in config_bpf_program()
336 pev = &priv->pev; in config_bpf_program()
347 priv->is_tp = true; in config_bpf_program()
348 priv->sys_name = strndup(main_str, s - main_str); in config_bpf_program()
349 priv->evt_name = strdup(s + 1); in config_bpf_program()
376 err = bpf_program__set_priv(prog, priv, clear_prog_priv); in config_bpf_program()
387 free(priv); in config_bpf_program()
417 struct bpf_prog_priv *priv = bpf_program__priv(prog); in preproc_gen_prologue() local
424 if (IS_ERR(priv) || !priv || priv->is_tp) in preproc_gen_prologue()
427 pev = &priv->pev; in preproc_gen_prologue()
429 if (n < 0 || n >= priv->nr_types) in preproc_gen_prologue()
434 if (priv->type_mapping[i] == n) in preproc_gen_prologue()
445 buf = priv->insns_buf; in preproc_gen_prologue()
568 struct bpf_prog_priv *priv = bpf_program__priv(prog); in hook_load_preprocessor() local
573 if (IS_ERR(priv) || !priv) { in hook_load_preprocessor()
578 if (priv->is_tp) { in hook_load_preprocessor()
579 priv->need_prologue = false; in hook_load_preprocessor()
583 pev = &priv->pev; in hook_load_preprocessor()
598 priv->need_prologue = false; in hook_load_preprocessor()
602 priv->need_prologue = true; in hook_load_preprocessor()
603 priv->insns_buf = malloc(sizeof(struct bpf_insn) * BPF_MAXINSNS); in hook_load_preprocessor()
604 if (!priv->insns_buf) { in hook_load_preprocessor()
609 priv->type_mapping = malloc(sizeof(int) * pev->ntevs); in hook_load_preprocessor()
610 if (!priv->type_mapping) { in hook_load_preprocessor()
614 memset(priv->type_mapping, -1, in hook_load_preprocessor()
617 err = map_prologue(pev, priv->type_mapping, &priv->nr_types); in hook_load_preprocessor()
621 err = bpf_program__set_prep(prog, priv->nr_types, in hook_load_preprocessor()
630 struct bpf_prog_priv *priv; in bpf__probe() local
644 priv = bpf_program__priv(prog); in bpf__probe()
645 if (IS_ERR(priv) || !priv) { in bpf__probe()
646 err = PTR_ERR(priv); in bpf__probe()
650 if (priv->is_tp) { in bpf__probe()
656 pev = &priv->pev; in bpf__probe()
693 struct bpf_prog_priv *priv = bpf_program__priv(prog); in bpf__unprobe() local
696 if (IS_ERR(priv) || !priv || priv->is_tp) in bpf__unprobe()
699 for (i = 0; i < priv->pev.ntevs; i++) { in bpf__unprobe()
700 struct probe_trace_event *tev = &priv->pev.tevs[i]; in bpf__unprobe()
749 struct bpf_prog_priv *priv = bpf_program__priv(prog); in bpf__foreach_event() local
754 if (IS_ERR(priv) || !priv) { in bpf__foreach_event()
759 if (priv->is_tp) { in bpf__foreach_event()
761 err = (*func)(priv->sys_name, priv->evt_name, fd, obj, arg); in bpf__foreach_event()
769 pev = &priv->pev; in bpf__foreach_event()
773 if (priv->need_prologue) { in bpf__foreach_event()
774 int type = priv->type_mapping[i]; in bpf__foreach_event()
834 bpf_map_priv__purge(struct bpf_map_priv *priv) in bpf_map_priv__purge() argument
838 list_for_each_entry_safe(pos, n, &priv->ops_list, list) { in bpf_map_priv__purge()
848 struct bpf_map_priv *priv = _priv; in bpf_map_priv__clear() local
850 bpf_map_priv__purge(priv); in bpf_map_priv__clear()
851 free(priv); in bpf_map_priv__clear()
925 bpf_map_priv__clone(struct bpf_map_priv *priv) in bpf_map_priv__clone() argument
937 list_for_each_entry(pos, &priv->ops_list, list) { in bpf_map_priv__clone()
953 struct bpf_map_priv *priv = bpf_map__priv(map); in bpf_map__add_op() local
955 if (IS_ERR(priv)) { in bpf_map__add_op()
957 return PTR_ERR(priv); in bpf_map__add_op()
960 if (!priv) { in bpf_map__add_op()
961 priv = zalloc(sizeof(*priv)); in bpf_map__add_op()
962 if (!priv) { in bpf_map__add_op()
966 INIT_LIST_HEAD(&priv->ops_list); in bpf_map__add_op()
968 if (bpf_map__set_priv(map, priv, bpf_map_priv__clear)) { in bpf_map__add_op()
969 free(priv); in bpf_map__add_op()
974 list_add_tail(&op->list, &priv->ops_list); in bpf_map__add_op()
1310 struct bpf_map_priv *priv = bpf_map__priv(map); in bpf_map_config_foreach_key() local
1312 if (IS_ERR(priv)) { in bpf_map_config_foreach_key()
1316 if (!priv || list_empty(&priv->ops_list)) { in bpf_map_config_foreach_key()
1332 list_for_each_entry(op, &priv->ops_list, list) { in bpf_map_config_foreach_key()
1532 struct bpf_map_priv *priv = bpf_map__priv(map); in bpf__setup_output_event() local
1534 if (IS_ERR(priv)) in bpf__setup_output_event()
1541 if (!need_init && !priv) in bpf__setup_output_event()
1542 need_init = !priv; in bpf__setup_output_event()
1543 if (!tmpl_priv && priv) in bpf__setup_output_event()
1544 tmpl_priv = priv; in bpf__setup_output_event()
1568 struct bpf_map_priv *priv = bpf_map__priv(map); in bpf__setup_output_event() local
1570 if (IS_ERR(priv)) in bpf__setup_output_event()
1572 if (priv) in bpf__setup_output_event()
1576 priv = bpf_map_priv__clone(tmpl_priv); in bpf__setup_output_event()
1577 if (!priv) in bpf__setup_output_event()
1580 err = bpf_map__set_priv(map, priv, bpf_map_priv__clear); in bpf__setup_output_event()
1582 bpf_map_priv__clear(map, priv); in bpf__setup_output_event()