Lines Matching refs:event
3 * probe-event.c : perf-probe definition to probe_events format converter
23 #include "event.h"
35 #include "trace-event.h" /* For __maybe_unused */
36 #include "probe-event.h"
917 * Perf failed to add kretprobe event with debuginfo of vmlinux which is
921 * for retprobe event.
935 /* Searching trace events corresponding to a probe event */
944 * setting appropriate (user given) event name
1315 /* Check the name is good for event, group or function */
1427 pev->event = strdup_esc(*arg);
1428 if (pev->event == NULL)
1431 if (!pev->sdt && !is_c_func_name(pev->event)) {
1432 zfree(&pev->event);
1435 semantic_error("%s is bad for event name -it must "
1487 if (asprintf(&pev->point.function, "%%%s", pev->event) < 0)
1655 /* Parse perf-probe event argument */
1766 /* Parse perf-probe event command */
1787 /* Generate event name if needed */
1788 if (!pev->event && pev->point.function && pev->point.line
1790 if (asprintf(&pev->event, "%s_L%d", pev->point.function,
1844 /* Parse probe_events event into struct probe_point */
1866 /* Scan event and group name. */
1876 semantic_error("Failed to parse event name: %s\n", argv[0]);
1882 tev->event = strdup(fmt3_str);
1883 if (tev->group == NULL || tev->event == NULL) {
1887 pr_debug("Group:%s Event:%s probe:%c\n", tev->group, tev->event, pr);
2062 if (pev->event)
2064 pev->event) < 0)
2211 tev->group, tev->event) < 0)
2311 /* Convert event/group name */
2312 pev->event = strdup(tev->event);
2314 if (pev->event == NULL || pev->group == NULL)
2351 zfree(&pev->event);
2422 dst->event = strdup_or_goto(src->event, out_err);
2450 zfree(&tev->event);
2579 static int perf_probe_event__sprintf(const char *group, const char *event,
2587 if (asprintf(&buf, "%s:%s", group, event) < 0)
2594 /* Synthesize only event probe point */
2620 /* Show an event */
2621 int show_perf_probe_event(const char *group, const char *event,
2628 ret = perf_probe_event__sprintf(group, event, pev, module, &buf);
2645 /* At first, check the event name itself */
2646 if (strfilter__compare(filter, tev->event))
2650 if (e_snprintf(tmp, 128, "%s:%s", tev->group, tev->event) < 0)
2680 ret = show_perf_probe_event(pev.group, pev.event,
2756 pr_warning("Error: event \"%s\" already exists.\n"
2757 " Hint: Remove existing event by 'perf probe -d'\n"
2785 pr_warning("Internal error: \"%s\" is an invalid event name.\n",
2803 tev->group, tev->event);
2806 /* Old uprobe event doesn't support memory dereference */
2832 const char *event, *group;
2837 if (pev->event && !pev->sdt)
2838 event = pev->event;
2839 else if (tev->event)
2840 event = tev->event;
2846 event = pev->point.function;
2848 event = tev->point.realname;
2857 /* Get an unused new event name */
2858 ret = get_new_event_name(buf, 64, event, namelist,
2863 event = buf;
2865 tev->event = strdup(event);
2867 if (tev->event == NULL || tev->group == NULL)
2871 * Add new event name to namelist if multiprobe event is NOT
2872 * supported, since we have to use new event name for following
2876 strlist__add(namelist, event);
2889 /* Get current event names */
2892 pr_debug("Failed to get current event list.\n");
2955 pr_warning("Failed to add event to probe cache\n");
3276 if (pev->event) {
3277 tev->event = strdup(pev->event);
3278 if (!tev->event)
3367 if (!entry->pev.event || !entry->pev.group)
3370 strglobmatch(entry->pev.event, pev->event)) {
3552 pr_debug("Failed to synthesize probe trace event.\n");
3650 if (!cur_name || strcmp(cur_name, tev->event)) {
3651 printf("%sftrace.event.kprobes.%s.probe = ",
3652 cur_name ? "\n" : "", tev->event);
3653 cur_name = tev->event;
3723 /* Get current event names */