Lines Matching refs:opts

92 	struct record_opts	opts;  member
410 struct record_opts *opts = (struct record_opts *)opt->value; in record__aio_parse() local
413 opts->nr_cblocks = 0; in record__aio_parse()
416 opts->nr_cblocks = strtol(str, NULL, 0); in record__aio_parse()
417 if (!opts->nr_cblocks) in record__aio_parse()
418 opts->nr_cblocks = nr_cblocks_default; in record__aio_parse()
448 return rec->opts.nr_cblocks > 0; in record__aio_enabled()
457 struct record_opts *opts = (struct record_opts *)opt->value; in record__mmap_flush_parse() local
470 opts->mmap_flush = parse_tag_value(str, tags); in record__mmap_flush_parse()
471 if (opts->mmap_flush == (int)-1) in record__mmap_flush_parse()
472 opts->mmap_flush = strtol(str, NULL, 0); in record__mmap_flush_parse()
475 if (!opts->mmap_flush) in record__mmap_flush_parse()
476 opts->mmap_flush = MMAP_FLUSH_DEFAULT; in record__mmap_flush_parse()
478 flush_max = evlist__mmap_size(opts->mmap_pages); in record__mmap_flush_parse()
480 if (opts->mmap_flush > flush_max) in record__mmap_flush_parse()
481 opts->mmap_flush = flush_max; in record__mmap_flush_parse()
491 struct record_opts *opts = opt->value; in record__parse_comp_level() local
494 opts->comp_level = 0; in record__parse_comp_level()
497 opts->comp_level = strtol(str, NULL, 0); in record__parse_comp_level()
498 if (!opts->comp_level) in record__parse_comp_level()
499 opts->comp_level = comp_level_default; in record__parse_comp_level()
509 return rec->opts.comp_level > 0; in record__comp_enabled()
657 rec->opts.auxtrace_snapshot_size); in record__auxtrace_mmap_read_snapshot()
726 err = auxtrace_parse_snapshot_options(rec->itr, &rec->opts, in record__auxtrace_init()
727 rec->opts.auxtrace_snapshot_opts); in record__auxtrace_init()
731 err = auxtrace_parse_sample_options(rec->itr, rec->evlist, &rec->opts, in record__auxtrace_init()
732 rec->opts.auxtrace_sample_opts); in record__auxtrace_init()
846 struct record_opts *opts = &rec->opts; in record__mmap_evlist() local
847 bool auxtrace_overwrite = opts->auxtrace_snapshot_mode || in record__mmap_evlist()
848 opts->auxtrace_sample_mode; in record__mmap_evlist()
851 if (opts->affinity != PERF_AFFINITY_SYS) in record__mmap_evlist()
854 if (evlist__mmap_ex(evlist, opts->mmap_pages, in record__mmap_evlist()
855 opts->auxtrace_mmap_pages, in record__mmap_evlist()
857 opts->nr_cblocks, opts->affinity, in record__mmap_evlist()
858 opts->mmap_flush, opts->comp_level) < 0) { in record__mmap_evlist()
865 opts->mmap_pages, opts->auxtrace_mmap_pages); in record__mmap_evlist()
890 struct record_opts *opts = &rec->opts; in record__open() local
898 if (opts->initial_delay || target__has_cpu(&opts->target) || in record__open()
913 if (opts->initial_delay && !pos->immediate && in record__open()
914 !target__has_cpu(&opts->target)) in record__open()
920 evlist__config(evlist, opts, &callchain_param); in record__open()
937 evsel__open_strerror(pos, &opts->target, errno, msg, sizeof(msg)); in record__open()
1066 if (rec->opts.affinity != PERF_AFFINITY_SYS && in record__adjust_affinity()
1163 if (map->auxtrace_mmap.base && !rec->opts.auxtrace_snapshot_mode && in record__mmap_read_evlist()
1164 !rec->opts.auxtrace_sample_mode && in record__mmap_read_evlist()
1212 if (!rec->opts.branch_stack) in record__init_features()
1215 if (!rec->opts.full_auxtrace) in record__init_features()
1218 if (!(rec->opts.use_clockid && rec->opts.clockid_res_ns)) in record__init_features()
1221 if (!rec->opts.use_clockid) in record__init_features()
1258 bool needs_mmap = rec->opts.synth & PERF_SYNTH_MMAP; in record__synthesize_workload()
1260 if (rec->opts.tail_synthesize != tail) in record__synthesize_workload()
1271 rec->opts.sample_address); in record__synthesize_workload()
1291 if (target__none(&rec->opts.target)) in record__switch_output()
1342 if (target__none(&rec->opts.target)) in record__switch_output()
1391 struct record_opts *opts = &rec->opts; in record__synthesize() local
1396 if (rec->opts.tail_synthesize != tail) in record__synthesize()
1414 if (rec->opts.auxtrace_sample_mode || rec->opts.full_auxtrace) { in record__synthesize()
1422 if (rec->opts.full_auxtrace) { in record__synthesize()
1471 machine, opts); in record__synthesize()
1475 if (rec->opts.synth & PERF_SYNTH_CGROUP) { in record__synthesize()
1482 if (rec->opts.nr_threads_synthesize > 1) { in record__synthesize()
1487 if (rec->opts.synth & PERF_SYNTH_TASK) { in record__synthesize()
1488 bool needs_mmap = rec->opts.synth & PERF_SYNTH_MMAP; in record__synthesize()
1490 err = __machine__synthesize_threads(machine, tool, &opts->target, in record__synthesize()
1492 f, needs_mmap, opts->sample_address, in record__synthesize()
1493 rec->opts.nr_threads_synthesize); in record__synthesize()
1496 if (rec->opts.nr_threads_synthesize > 1) in record__synthesize()
1512 struct record_opts *opts = &rec->opts; in record__setup_sb_evlist() local
1524 if (!opts->no_bpf_event) { in record__setup_sb_evlist()
1540 if (evlist__start_sb_thread(rec->sb_evlist, &rec->opts.target)) { in record__setup_sb_evlist()
1542 opts->no_bpf_event = true; in record__setup_sb_evlist()
1555 if (!rec->opts.use_clockid) in record__init_clock()
1558 if (rec->opts.use_clockid && rec->opts.clockid_res_ns) in record__init_clock()
1559 session->header.env.clock.clockid_res_ns = rec->opts.clockid_res_ns; in record__init_clock()
1561 session->header.env.clock.clockid = rec->opts.clockid; in record__init_clock()
1568 if (clock_gettime(rec->opts.clockid, &ref_clockid)) { in record__init_clock()
1628 struct record_opts *opts = &rec->opts; in __cmd_record() local
1642 if (rec->opts.record_namespaces) in __cmd_record()
1645 if (rec->opts.record_cgroup) { in __cmd_record()
1654 if (rec->opts.auxtrace_snapshot_mode || rec->switch_output.enabled) { in __cmd_record()
1656 if (rec->opts.auxtrace_snapshot_mode) in __cmd_record()
1673 if (zstd_init(&session->zstd_data, rec->opts.comp_level) < 0) { in __cmd_record()
1693 session->header.env.comp_level = rec->opts.comp_level; in __cmd_record()
1695 if (rec->opts.kcore && in __cmd_record()
1707 err = evlist__prepare_workload(rec->evlist, &opts->target, argv, data->is_pipe, in __cmd_record()
1723 rec->opts.sample_id = true; in __cmd_record()
1733 if (rec->opts.kcore) { in __cmd_record()
1805 if (!target__none(&opts->target) && !opts->initial_delay) in __cmd_record()
1857 if (evlist__initialize_ctlfd(rec->evlist, opts->ctl_fd, opts->ctl_fd_ack)) in __cmd_record()
1860 if (opts->initial_delay) { in __cmd_record()
1862 if (opts->initial_delay > 0) { in __cmd_record()
1863 usleep(opts->initial_delay * USEC_PER_MSEC); in __cmd_record()
1983 if (done && !disabled && !target__none(&opts->target)) { in __cmd_record()
1993 if (opts->auxtrace_snapshot_on_exit) in __cmd_record()
2011 if (target__none(&rec->opts.target)) in __cmd_record()
2064 if (rec->samples && !rec->opts.full_auxtrace) in __cmd_record()
2089 if (!opts->no_bpf_event) in __cmd_record()
2175 rec->opts.nr_cblocks = strtol(value, NULL, 0); in perf_record_config()
2176 if (!rec->opts.nr_cblocks) in perf_record_config()
2177 rec->opts.nr_cblocks = nr_cblocks_default; in perf_record_config()
2187 struct record_opts *opts = (struct record_opts *)opt->value; in record__parse_affinity() local
2193 opts->affinity = PERF_AFFINITY_NODE; in record__parse_affinity()
2195 opts->affinity = PERF_AFFINITY_CPU; in record__parse_affinity()
2231 struct record_opts *opts = opt->value; in record__parse_mmap_pages() local
2251 opts->mmap_pages = mmap_pages; in record__parse_mmap_pages()
2263 opts->auxtrace_mmap_pages = mmap_pages; in record__parse_mmap_pages()
2274 struct record_opts *opts = opt->value; in parse_control_option() local
2276 return evlist__parse_control(str, &opts->ctl_fd, &opts->ctl_fd_ack, &opts->ctl_fd_close); in parse_control_option()
2281 u64 wakeup_size = evlist__mmap_size(rec->opts.mmap_pages); in switch_output_size_warn()
2354 if (s->size && !rec->opts.no_buffering) in switch_output_setup()
2407 struct record_opts *opts = opt->value; in parse_record_synth_option() local
2413 opts->synth = parse_synth_opt(p); in parse_record_synth_option()
2416 if (opts->synth < 0) { in parse_record_synth_option()
2434 .opts = {
2485 OPT_STRING('p', "pid", &record.opts.target.pid, "pid",
2487 OPT_STRING('t', "tid", &record.opts.target.tid, "tid",
2491 OPT_BOOLEAN(0, "no-buffering", &record.opts.no_buffering,
2493 OPT_BOOLEAN('R', "raw-samples", &record.opts.raw_samples,
2495 OPT_BOOLEAN('a', "all-cpus", &record.opts.target.system_wide,
2497 OPT_STRING('C', "cpu", &record.opts.target.cpu_list, "cpu",
2499 OPT_U64('c', "count", &record.opts.user_interval, "event period to sample"),
2502 OPT_BOOLEAN_SET('i', "no-inherit", &record.opts.no_inherit,
2503 &record.opts.no_inherit_set,
2505 OPT_BOOLEAN(0, "tail-synthesize", &record.opts.tail_synthesize,
2507 OPT_BOOLEAN(0, "overwrite", &record.opts.overwrite, "use overwrite mode"),
2508 OPT_BOOLEAN(0, "no-bpf-event", &record.opts.no_bpf_event, "do not record bpf events"),
2509 OPT_BOOLEAN(0, "strict-freq", &record.opts.strict_freq,
2511 OPT_CALLBACK('F', "freq", &record.opts, "freq or 'max'",
2514 OPT_CALLBACK('m', "mmap-pages", &record.opts, "pages[,pages]",
2517 OPT_CALLBACK(0, "mmap-flush", &record.opts, "number",
2520 OPT_BOOLEAN(0, "group", &record.opts.group,
2525 OPT_CALLBACK(0, "call-graph", &record.opts,
2531 OPT_BOOLEAN('s', "stat", &record.opts.inherit_stat,
2533 OPT_BOOLEAN('d', "data", &record.opts.sample_address, "Record the sample addresses"),
2534 OPT_BOOLEAN(0, "phys-data", &record.opts.sample_phys_addr,
2536 OPT_BOOLEAN(0, "data-page-size", &record.opts.sample_data_page_size,
2538 OPT_BOOLEAN(0, "code-page-size", &record.opts.sample_code_page_size,
2540 OPT_BOOLEAN(0, "sample-cpu", &record.opts.sample_cpu, "Record the sample cpu"),
2541 OPT_BOOLEAN_SET('T', "timestamp", &record.opts.sample_time,
2542 &record.opts.sample_time_set,
2544 OPT_BOOLEAN_SET('P', "period", &record.opts.period, &record.opts.period_set,
2546 OPT_BOOLEAN('n', "no-samples", &record.opts.no_samples,
2557 OPT_INTEGER('D', "delay", &record.opts.initial_delay,
2559 OPT_BOOLEAN(0, "kcore", &record.opts.kcore, "copy /proc/kcore"),
2560 OPT_STRING('u', "uid", &record.opts.target.uid_str, "user",
2563 OPT_CALLBACK_NOOPT('b', "branch-any", &record.opts.branch_stack,
2567 OPT_CALLBACK('j', "branch-filter", &record.opts.branch_stack,
2570 OPT_BOOLEAN('W', "weight", &record.opts.sample_weight,
2572 OPT_BOOLEAN(0, "transaction", &record.opts.sample_transaction,
2574 OPT_BOOLEAN(0, "per-thread", &record.opts.target.per_thread,
2576 OPT_CALLBACK_OPTARG('I', "intr-regs", &record.opts.sample_intr_regs, NULL, "any register",
2579 OPT_CALLBACK_OPTARG(0, "user-regs", &record.opts.sample_user_regs, NULL, "any register",
2582 OPT_BOOLEAN(0, "running-time", &record.opts.running_time,
2584 OPT_CALLBACK('k', "clockid", &record.opts,
2587 OPT_STRING_OPTARG('S', "snapshot", &record.opts.auxtrace_snapshot_opts,
2589 OPT_STRING_OPTARG(0, "aux-sample", &record.opts.auxtrace_sample_opts,
2593 OPT_BOOLEAN(0, "namespaces", &record.opts.record_namespaces,
2595 OPT_BOOLEAN(0, "all-cgroups", &record.opts.record_cgroup,
2597 OPT_BOOLEAN_SET(0, "switch-events", &record.opts.record_switch_events,
2598 &record.opts.record_switch_events_set,
2600 OPT_BOOLEAN_FLAG(0, "all-kernel", &record.opts.all_kernel,
2603 OPT_BOOLEAN_FLAG(0, "all-user", &record.opts.all_user,
2606 OPT_BOOLEAN(0, "kernel-callchains", &record.opts.kernel_callchains,
2608 OPT_BOOLEAN(0, "user-callchains", &record.opts.user_callchains,
2636 OPT_CALLBACK_OPTARG(0, "aio", &record.opts,
2640 OPT_CALLBACK(0, "affinity", &record.opts, "node|cpu",
2644 OPT_CALLBACK_OPTARG('z', "compression-level", &record.opts, &comp_level_default,
2651 &record.opts.nr_threads_synthesize,
2658 OPT_CALLBACK(0, "control", &record.opts, "fd:ctl-fd[,ack-fd] or fifo:ctl-fifo[,ack-fifo]",
2664 OPT_CALLBACK(0, "synth", &record.opts, "no|all|task|mmap|cgroup",
2700 rec->opts.affinity = PERF_AFFINITY_SYS; in cmd_record()
2720 if (!argc && target__none(&rec->opts.target)) in cmd_record()
2721 rec->opts.target.system_wide = true; in cmd_record()
2723 if (nr_cgroups && !rec->opts.target.system_wide) { in cmd_record()
2739 rec->opts.build_id = true; in cmd_record()
2744 if (rec->opts.record_cgroup && !perf_can_record_cgroup()) { in cmd_record()
2750 if (rec->opts.kcore) in cmd_record()
2753 if (rec->opts.comp_level != 0) { in cmd_record()
2758 if (rec->opts.record_switch_events && in cmd_record()
2794 if (rec->opts.affinity != PERF_AFFINITY_SYS) { in cmd_record()
2853 if (record.opts.overwrite) in cmd_record()
2854 record.opts.tail_synthesize = true; in cmd_record()
2859 !record.opts.no_samples); in cmd_record()
2862 !record.opts.no_samples); in cmd_record()
2871 if (rec->opts.target.tid && !rec->opts.no_inherit_set) in cmd_record()
2872 rec->opts.no_inherit = true; in cmd_record()
2874 err = target__validate(&rec->opts.target); in cmd_record()
2876 target__strerror(&rec->opts.target, err, errbuf, BUFSIZ); in cmd_record()
2880 err = target__parse_uid(&rec->opts.target); in cmd_record()
2884 target__strerror(&rec->opts.target, err, errbuf, BUFSIZ); in cmd_record()
2892 rec->opts.ignore_missing_thread = rec->opts.target.uid != UINT_MAX || rec->opts.target.pid; in cmd_record()
2894 if (evlist__fix_hybrid_cpus(rec->evlist, rec->opts.target.cpu_list)) { in cmd_record()
2896 rec->opts.target.cpu_list); in cmd_record()
2900 rec->opts.target.hybrid = perf_pmu__has_hybrid(); in cmd_record()
2902 if (evlist__create_maps(rec->evlist, &rec->opts.target) < 0) in cmd_record()
2905 err = auxtrace_record__options(rec->itr, rec->evlist, &rec->opts); in cmd_record()
2914 if (rec->opts.full_auxtrace) in cmd_record()
2917 if (rec->opts.text_poke) { in cmd_record()
2925 if (record_opts__config(&rec->opts)) { in cmd_record()
2930 if (rec->opts.nr_cblocks > nr_cblocks_max) in cmd_record()
2931 rec->opts.nr_cblocks = nr_cblocks_max; in cmd_record()
2932 pr_debug("nr_cblocks: %d\n", rec->opts.nr_cblocks); in cmd_record()
2934 pr_debug("affinity: %s\n", affinity_tags[rec->opts.affinity]); in cmd_record()
2935 pr_debug("mmap flush: %d\n", rec->opts.mmap_flush); in cmd_record()
2937 if (rec->opts.comp_level > comp_level_max) in cmd_record()
2938 rec->opts.comp_level = comp_level_max; in cmd_record()
2939 pr_debug("comp level: %d\n", rec->opts.comp_level); in cmd_record()
2948 evlist__close_control(rec->opts.ctl_fd, rec->opts.ctl_fd_ack, &rec->opts.ctl_fd_close); in cmd_record()