Lines Matching defs:pid
450 static int parse_vma_segs(int pid, const char *lib_path, struct elf_seg **segs, size_t *seg_cnt)
461 * /proc/<pid>/root/<path>. They will be reported as just /<path> in
462 * /proc/<pid>/maps.
464 if (sscanf(lib_path, "/proc/%d/root%s", &tmp_pid, path) == 2 && pid == tmp_pid)
474 sprintf(line, "/proc/%d/maps", pid);
528 lib_path, path, pid);
561 /* for VMA segments from /proc/<pid>/maps file, provided "address" is
578 static int collect_usdt_targets(struct usdt_manager *man, Elf *elf, const char *path, pid_t pid,
701 if (pid < 0) {
709 err = parse_vma_segs(pid, path, &vma_segs, &vma_seg_cnt);
712 pid, path, err);
956 pid_t pid, const char *path,
982 if (pid < 0)
983 pid = -1;
984 else if (pid == 0)
985 pid = getpid();
988 * activations to a given PID, if pid > 0
990 err = collect_usdt_targets(man, elf_fd.elf, path, pid, usdt_provider, usdt_name,
1075 uprobe_link = bpf_program__attach_uprobe_opts(prog, pid, path,
1098 link->multi_link = bpf_program__attach_uprobe_multi(prog, pid, path,