Lines Matching defs:opts

2668 				 const struct bpf_object_open_opts *opts)
2674 strict = !OPTS_GET(opts, relaxed_maps, false);
2675 pin_root_path = OPTS_GET(opts, pin_root_path, NULL);
4709 LIBBPF_OPTS(bpf_map_create_opts, opts, .map_flags = BPF_F_MMAPABLE);
4712 fd = bpf_map_create(BPF_MAP_TYPE_ARRAY, "libbpf_mmap", sizeof(int), sizeof(int), 1, &opts);
4718 LIBBPF_OPTS(bpf_prog_load_opts, opts, .expected_attach_type = BPF_CGROUP_INET_SOCK_CREATE);
4730 fd = bpf_prog_load(BPF_PROG_TYPE_CGROUP_SOCK, NULL, "GPL", insns, insn_cnt, &opts);
6825 struct bpf_prog_load_opts *opts, long cookie)
6831 opts->expected_attach_type = 0;
6834 opts->prog_flags |= BPF_F_SLEEPABLE;
6837 opts->prog_flags |= BPF_F_XDP_HAS_FRAGS;
6874 * this callback is called after opts were populated by
6875 * libbpf, so this callback has to update opts explicitly here
6877 opts->attach_btf_obj_fd = btf_obj_fd;
6878 opts->attach_btf_id = btf_type_id;
7343 static int bpf_object_init_progs(struct bpf_object *obj, const struct bpf_object_open_opts *opts)
7377 const struct bpf_object_open_opts *opts)
7393 if (!OPTS_VALID(opts, bpf_object_open_opts))
7396 obj_name = OPTS_GET(opts, object_name, NULL);
7408 log_buf = OPTS_GET(opts, kernel_log_buf, NULL);
7409 log_size = OPTS_GET(opts, kernel_log_size, 0);
7410 log_level = OPTS_GET(opts, kernel_log_level, 0);
7424 btf_tmp_path = OPTS_GET(opts, btf_custom_path, NULL);
7437 kconfig = OPTS_GET(opts, kconfig, NULL);
7451 err = err ? : bpf_object__init_maps(obj, opts);
7452 err = err ? : bpf_object_init_progs(obj, opts);
7466 bpf_object__open_file(const char *path, const struct bpf_object_open_opts *opts)
7473 return libbpf_ptr(bpf_object_open(path, NULL, 0, opts));
7483 const struct bpf_object_open_opts *opts)
7488 return libbpf_ptr(bpf_object_open(NULL, obj_buf, obj_buf_sz, opts));
8504 int bpf_object__gen_loader(struct bpf_object *obj, struct gen_loader_opts *opts)
8508 if (!opts)
8510 if (!OPTS_VALID(opts, gen_loader_opts))
8515 gen->opts = opts;
8872 const struct libbpf_prog_handler_opts *opts)
8876 if (!OPTS_VALID(opts, libbpf_prog_handler_opts))
8903 sec_def->cookie = OPTS_GET(opts, cookie, 0);
8905 sec_def->prog_setup_fn = OPTS_GET(opts, prog_setup_fn, NULL);
8906 sec_def->prog_prepare_load_fn = OPTS_GET(opts, prog_prepare_load_fn, NULL);
8907 sec_def->prog_attach_fn = OPTS_GET(opts, prog_attach_fn, NULL);
10109 const struct bpf_perf_event_opts *opts)
10116 if (!OPTS_VALID(opts, bpf_perf_event_opts))
10138 force_ioctl_attach = OPTS_GET(opts, force_ioctl_attach, false);
10141 .perf_event.bpf_cookie = OPTS_GET(opts, bpf_cookie, 0));
10153 if (OPTS_GET(opts, bpf_cookie, 0)) {
10511 const struct bpf_kprobe_opts *opts)
10522 if (!OPTS_VALID(opts, bpf_kprobe_opts))
10525 attach_mode = OPTS_GET(opts, attach_mode, PROBE_ATTACH_MODE_DEFAULT);
10526 retprobe = OPTS_GET(opts, retprobe, false);
10527 offset = OPTS_GET(opts, offset, 0);
10528 pe_opts.bpf_cookie = OPTS_GET(opts, bpf_cookie, 0);
10608 DECLARE_LIBBPF_OPTS(bpf_kprobe_opts, opts,
10612 return bpf_program__attach_kprobe_opts(prog, func_name, &opts);
10617 const struct bpf_ksyscall_opts *opts)
10622 if (!OPTS_VALID(opts, bpf_ksyscall_opts))
10637 kprobe_opts.retprobe = OPTS_GET(opts, retprobe, false);
10638 kprobe_opts.bpf_cookie = OPTS_GET(opts, bpf_cookie, 0);
10832 const struct bpf_kprobe_multi_opts *opts)
10847 if (!OPTS_VALID(opts, bpf_kprobe_multi_opts))
10850 syms = OPTS_GET(opts, syms, false);
10851 addrs = OPTS_GET(opts, addrs, false);
10852 cnt = OPTS_GET(opts, cnt, false);
10853 cookies = OPTS_GET(opts, cookies, false);
10875 retprobe = OPTS_GET(opts, retprobe, false);
10910 DECLARE_LIBBPF_OPTS(bpf_kprobe_opts, opts);
10922 opts.retprobe = str_has_pfx(prog->sec_name, "kretprobe/");
10923 if (opts.retprobe)
10933 if (opts.retprobe && offset != 0) {
10939 opts.offset = offset;
10940 *link = bpf_program__attach_kprobe_opts(prog, func, &opts);
10947 LIBBPF_OPTS(bpf_ksyscall_opts, opts);
10956 opts.retprobe = str_has_pfx(prog->sec_name, "kretsyscall/");
10957 if (opts.retprobe)
10962 *link = bpf_program__attach_ksyscall(prog, syscall_name, &opts);
10968 LIBBPF_OPTS(bpf_kprobe_multi_opts, opts);
10980 opts.retprobe = str_has_pfx(prog->sec_name, "kretprobe.multi/");
10981 if (opts.retprobe)
10992 *link = bpf_program__attach_kprobe_multi_opts(prog, pattern, &opts);
11000 LIBBPF_OPTS(bpf_uprobe_multi_opts, opts);
11013 opts.retprobe = strcmp(probe_type, "uretprobe.multi") == 0;
11014 *link = bpf_program__attach_uprobe_multi(prog, -1, binary_path, func_name, &opts);
11257 const struct bpf_uprobe_multi_opts *opts)
11270 if (!OPTS_VALID(opts, bpf_uprobe_multi_opts))
11273 syms = OPTS_GET(opts, syms, NULL);
11274 offsets = OPTS_GET(opts, offsets, NULL);
11275 ref_ctr_offsets = OPTS_GET(opts, ref_ctr_offsets, NULL);
11276 cookies = OPTS_GET(opts, cookies, NULL);
11277 cnt = OPTS_GET(opts, cnt, 0);
11334 lopts.uprobe_multi.flags = OPTS_GET(opts, retprobe, false) ? BPF_F_UPROBE_MULTI_RETURN : 0;
11369 const struct bpf_uprobe_opts *opts)
11382 if (!OPTS_VALID(opts, bpf_uprobe_opts))
11385 attach_mode = OPTS_GET(opts, attach_mode, PROBE_ATTACH_MODE_DEFAULT);
11386 retprobe = OPTS_GET(opts, retprobe, false);
11387 ref_ctr_off = OPTS_GET(opts, ref_ctr_offset, 0);
11388 pe_opts.bpf_cookie = OPTS_GET(opts, bpf_cookie, 0);
11410 func_name = OPTS_GET(opts, func_name, NULL);
11514 DECLARE_LIBBPF_OPTS(bpf_uprobe_opts, opts);
11534 opts.retprobe = strcmp(probe_type, "uretprobe") == 0 ||
11536 if (opts.retprobe && offset != 0) {
11541 opts.func_name = func_name;
11542 *link = bpf_program__attach_uprobe_opts(prog, -1, binary_path, offset, &opts);
11562 DECLARE_LIBBPF_OPTS(bpf_uprobe_opts, opts, .retprobe = retprobe);
11564 return bpf_program__attach_uprobe_opts(prog, pid, binary_path, func_offset, &opts);
11570 const struct bpf_usdt_opts *opts)
11578 if (!OPTS_VALID(opts, bpf_uprobe_opts))
11611 usdt_cookie = OPTS_GET(opts, usdt_cookie, 0);
11703 const struct bpf_tracepoint_opts *opts)
11710 if (!OPTS_VALID(opts, bpf_tracepoint_opts))
11713 pe_opts.bpf_cookie = OPTS_GET(opts, bpf_cookie, 0);
11846 const struct bpf_trace_opts *opts)
11853 if (!OPTS_VALID(opts, bpf_trace_opts))
11868 link_opts.tracing.cookie = OPTS_GET(opts, cookie, 0);
11887 const struct bpf_trace_opts *opts)
11889 return bpf_program__attach_btf_id(prog, opts);
11912 const struct bpf_link_create_opts *opts)
11931 link_fd = bpf_link_create(prog_fd, target_fd, attach_type, opts);
11964 const struct bpf_tcx_opts *opts)
11970 if (!OPTS_VALID(opts, bpf_tcx_opts))
11973 relative_id = OPTS_GET(opts, relative_id, 0);
11974 relative_fd = OPTS_GET(opts, relative_fd, 0);
11988 link_create_opts.tcx.expected_revision = OPTS_GET(opts, expected_revision, 0);
11991 link_create_opts.flags = OPTS_GET(opts, flags, 0);
12036 const struct bpf_iter_attach_opts *opts)
12044 if (!OPTS_VALID(opts, bpf_iter_attach_opts))
12047 link_create_opts.iter_info = OPTS_GET(opts, link_info, (void *)0);
12048 link_create_opts.iter_info_len = OPTS_GET(opts, link_info_len, 0);
12081 const struct bpf_netfilter_opts *opts)
12087 if (!OPTS_VALID(opts, bpf_netfilter_opts))
12102 lopts.netfilter.pf = OPTS_GET(opts, pf, 0);
12103 lopts.netfilter.hooknum = OPTS_GET(opts, hooknum, 0);
12104 lopts.netfilter.priority = OPTS_GET(opts, priority, 0);
12105 lopts.netfilter.flags = OPTS_GET(opts, flags, 0);
12433 const struct perf_buffer_opts *opts)
12440 if (!OPTS_VALID(opts, perf_buffer_opts))
12443 sample_period = OPTS_GET(opts, sample_period, 1);
12466 const struct perf_buffer_raw_opts *opts)
12473 if (!OPTS_VALID(opts, perf_buffer_raw_opts))
12479 p.cpu_cnt = OPTS_GET(opts, cpu_cnt, 0);
12480 p.cpus = OPTS_GET(opts, cpus, NULL);
12481 p.map_keys = OPTS_GET(opts, map_keys, NULL);
12996 const struct bpf_object_open_opts *opts)
13004 /* Attempt to preserve opts->object_name, unless overriden by user
13010 if (opts) {
13011 memcpy(&skel_opts, opts, sizeof(*opts));
13012 if (!opts->object_name)