Lines Matching +full:aux +full:- +full:output +full:- +full:power

1 /* SPDX-License-Identifier: GPL-2.0-only */
3 * auxtrace.h: AUX area trace support
4 * Copyright (c) 2013-2015, Intel Corporation.
60 #define AUXTRACE_ERR_FLG_OVERFLOW (1 << ('o' - 'a'))
61 #define AUXTRACE_ERR_FLG_DATA_LOST (1 << ('l' - 'a'))
63 #define AUXTRACE_LOG_FLG_ALL_PERF_EVTS (1 << ('a' - 'a'))
64 #define AUXTRACE_LOG_FLG_ON_ERROR (1 << ('e' - 'a'))
65 #define AUXTRACE_LOG_FLG_USE_STDOUT (1 << ('o' - 'a'))
68 * struct itrace_synth_opts - AUX area tracing synthesis options.
80 * @pwr_events: whether to synthesize power events
103 * @vm_tm_corr_dry_run: VM Time Correlation dry-run
104 * @vm_tm_corr_args: VM Time Correlation implementation-specific arguments
170 * struct auxtrace_index_entry - indexes a AUX area tracing event within a
183 * struct auxtrace_index - index of AUX area tracing events within a perf.data
196 * struct auxtrace - session callbacks to allow AUX area data decoding.
199 * @queue_data: queue an AUX sample or PERF_RECORD_AUXTRACE event for later
201 * @dump_auxtrace_sample: dump AUX area sample data
228 * struct auxtrace_buffer - a buffer containing AUX area tracing data.
231 * @pid: in per-thread mode, the pid this buffer is associated with
232 * @tid: in per-thread mode, the tid this buffer is associated with
233 * @cpu: in per-cpu mode, the cpu this buffer is associated with
244 * @reference: an implementation-specific reference determined when the data is
270 * struct auxtrace_queue - a queue of AUX area tracing data buffers.
272 * @tid: in per-thread mode, the tid this queue is associated with
273 * @cpu: in per-cpu mode, the cpu this queue is associated with
275 * @priv: implementation-specific data
286 * struct auxtrace_queues - an array of AUX area tracing queues.
302 * struct auxtrace_heap_item - element of struct auxtrace_heap.
313 * struct auxtrace_heap - a heap suitable for sorting AUX area tracing queues.
325 * struct auxtrace_mmap - records an mmap of the auxtrace buffer.
328 * @mask: %0 if @len is not a power of two, otherwise (@len - %1)
332 * @tid: tid for a per-thread mmap (also set if there is only 1 tid on a per-cpu
334 * @cpu: cpu number for a per-cpu mmap otherwise %-1
348 * struct auxtrace_mmap_params - parameters to set up struct auxtrace_mmap.
349 * @mask: %0 if @len is not a power of two, otherwise (@len - %1)
354 * @tid: tid for a per-thread mmap (also set if there is only 1 tid on a per-cpu
356 * @mmap_needed: set to %false for non-auxtrace events. This is needed because
357 * auxtrace mmapping is done in the same code path as non-auxtrace
358 * mmapping but not every evsel that needs non-auxtrace mmapping
360 * @cpu: cpu number for a per-cpu mmap otherwise %-1
374 * struct auxtrace_record - callbacks for recording AUX area data.
377 * @info_fill: fill-in the private data in auxtrace_info_event
383 * @reference: provide a 64-bit reference number for auxtrace_event
385 * @alignment: alignment (if any) for AUX area data
386 * @default_aux_sample_size: default sample size for --aux sample option
417 * struct addr_filter - address filter.
449 * struct addr_filters - list of address filters.
468 struct perf_event_mmap_page *pc = mm->userpg; in auxtrace_mmap__read_head()
475 head = READ_ONCE(pc->aux_head); in auxtrace_mmap__read_head()
485 struct perf_event_mmap_page *pc = mm->userpg; in auxtrace_mmap__write_tail()
493 WRITE_ONCE(pc->aux_tail, tail); in auxtrace_mmap__write_tail()
657 " p: synthesize power events\n" \
659 " of aux-output (refer to perf record)\n" \
663 " each flag must be preceded by + or -\n" \
667 " each flag must be preceded by + or -\n" \
669 " o (output to stdout)\n" \
681 " Z: prefer to ignore timestamps (so-called \"timeless\" decoding)\n" \
691 opts->ptime_range = ptime_range; in itrace_synth_opts__set_time_range()
692 opts->range_num = range_num; in itrace_synth_opts__set_time_range()
698 opts->ptime_range = NULL; in itrace_synth_opts__clear_time_range()
699 opts->range_num = 0; in itrace_synth_opts__clear_time_range()
765 pr_err("AUX area tracing not supported\n"); in itrace_do_parse_synth_opts()
766 return -EINVAL; in itrace_do_parse_synth_opts()
774 pr_err("AUX area tracing not supported\n"); in itrace_parse_synth_opts()
775 return -EINVAL; in itrace_parse_synth_opts()
785 pr_err("AUX area tracing not supported\n"); in auxtrace_parse_snapshot_options()
786 return -EINVAL; in auxtrace_parse_snapshot_options()
797 pr_err("AUX area tracing not supported\n"); in auxtrace_parse_sample_options()
798 return -EINVAL; in auxtrace_parse_sample_options()
804 pr_err("AUX area tracing not supported\n"); in auxtrace_parse_aux_action()
805 return -EINVAL; in auxtrace_parse_aux_action()
849 return -EINVAL; in auxtrace_index__write()
858 return -EINVAL; in auxtrace_index__process()