mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-12-27 08:45:26 -05:00
perf build: Remove NO_AUXTRACE build option
The NO_AUXTRACE build option was used when the __get_cpuid feature test failed or if it was provided on the command line. The option no longer avoids a dependency on a library and so having the option is just adding complexity to the code base. Remove the option CONFIG_AUXTRACE from Build files and HAVE_AUXTRACE_SUPPORT by assuming it is always defined. Signed-off-by: Ian Rogers <irogers@google.com> Reviewed-by: James Clark <james.clark@linaro.org> Signed-off-by: Namhyung Kim <namhyung@kernel.org>
This commit is contained in:
@@ -50,7 +50,6 @@ feature::
|
||||
dwarf / HAVE_LIBDW_SUPPORT
|
||||
dwarf_getlocations / HAVE_LIBDW_SUPPORT
|
||||
dwarf-unwind / HAVE_DWARF_UNWIND_SUPPORT
|
||||
auxtrace / HAVE_AUXTRACE_SUPPORT
|
||||
libbfd / HAVE_LIBBFD_SUPPORT
|
||||
libbpf-strings / HAVE_LIBBPF_STRINGS_SUPPORT
|
||||
libcapstone / HAVE_LIBCAPSTONE_SUPPORT
|
||||
|
||||
@@ -1113,11 +1113,6 @@ ifndef NO_CAPSTONE
|
||||
endif
|
||||
endif
|
||||
|
||||
ifndef NO_AUXTRACE
|
||||
$(call detected,CONFIG_AUXTRACE)
|
||||
CFLAGS += -DHAVE_AUXTRACE_SUPPORT
|
||||
endif
|
||||
|
||||
ifdef EXTRA_TESTS
|
||||
$(call detected,CONFIG_EXTRA_TESTS)
|
||||
CFLAGS += -DHAVE_EXTRA_TESTS
|
||||
|
||||
@@ -84,8 +84,6 @@ include ../scripts/utilities.mak
|
||||
#
|
||||
# Define NO_LZMA if you do not want to support compressed (xz) kernel modules
|
||||
#
|
||||
# Define NO_AUXTRACE if you do not want AUX area tracing support
|
||||
#
|
||||
# Define NO_LIBBPF if you do not want BPF support
|
||||
#
|
||||
# Define NO_LIBCAP if you do not want process capabilities considered by perf
|
||||
|
||||
@@ -3,4 +3,4 @@ perf-util-y += perf_regs.o
|
||||
perf-util-$(CONFIG_LOCAL_LIBUNWIND) += unwind-libunwind.o
|
||||
perf-util-$(CONFIG_LIBDW_DWARF_UNWIND) += unwind-libdw.o
|
||||
|
||||
perf-util-$(CONFIG_AUXTRACE) += pmu.o auxtrace.o cs-etm.o
|
||||
perf-util-y += pmu.o auxtrace.o cs-etm.o
|
||||
|
||||
@@ -20,7 +20,6 @@ void perf_pmu__arch_init(struct perf_pmu *pmu)
|
||||
{
|
||||
struct perf_cpu_map *intersect, *online = cpu_map__online();
|
||||
|
||||
#ifdef HAVE_AUXTRACE_SUPPORT
|
||||
if (!strcmp(pmu->name, CORESIGHT_ETM_PMU_NAME)) {
|
||||
/* add ETM default config here */
|
||||
pmu->auxtrace = true;
|
||||
@@ -39,7 +38,6 @@ void perf_pmu__arch_init(struct perf_pmu *pmu)
|
||||
pmu->selectable = true;
|
||||
#endif
|
||||
}
|
||||
#endif
|
||||
/* Workaround some ARM PMU's failing to correctly set CPU maps for online processors. */
|
||||
intersect = perf_cpu_map__intersect(online, pmu->cpus);
|
||||
perf_cpu_map__put(online);
|
||||
|
||||
@@ -1,13 +1,14 @@
|
||||
perf-util-y += header.o
|
||||
perf-util-y += machine.o
|
||||
perf-util-y += perf_regs.o
|
||||
perf-util-y += tsc.o
|
||||
perf-util-y += pmu.o
|
||||
perf-util-$(CONFIG_LIBDW_DWARF_UNWIND) += unwind-libdw.o
|
||||
perf-util-$(CONFIG_LIBTRACEEVENT) += kvm-stat.o
|
||||
perf-util-$(CONFIG_LOCAL_LIBUNWIND) += unwind-libunwind.o
|
||||
perf-util-$(CONFIG_LIBDW_DWARF_UNWIND) += unwind-libdw.o
|
||||
|
||||
perf-util-$(CONFIG_AUXTRACE) += ../../arm/util/pmu.o \
|
||||
../../arm/util/auxtrace.o \
|
||||
../../arm/util/cs-etm.o \
|
||||
arm-spe.o mem-events.o hisi-ptt.o
|
||||
perf-util-y += ../../arm/util/auxtrace.o
|
||||
perf-util-y += ../../arm/util/cs-etm.o
|
||||
perf-util-y += ../../arm/util/pmu.o
|
||||
perf-util-y += arm-spe.o
|
||||
perf-util-y += header.o
|
||||
perf-util-y += hisi-ptt.o
|
||||
perf-util-y += machine.o
|
||||
perf-util-y += mem-events.o
|
||||
perf-util-y += perf_regs.o
|
||||
perf-util-y += pmu.o
|
||||
perf-util-y += tsc.o
|
||||
|
||||
@@ -10,4 +10,4 @@ perf-util-$(CONFIG_LIBDW) += skip-callchain-idx.o
|
||||
|
||||
perf-util-$(CONFIG_LIBUNWIND) += unwind-libunwind.o
|
||||
perf-util-$(CONFIG_LIBDW_DWARF_UNWIND) += unwind-libdw.o
|
||||
perf-util-$(CONFIG_AUXTRACE) += auxtrace.o
|
||||
perf-util-y += auxtrace.o
|
||||
|
||||
@@ -7,4 +7,4 @@ perf-util-$(CONFIG_LIBDW_DWARF_UNWIND) += unwind-libdw.o
|
||||
perf-util-y += machine.o
|
||||
perf-util-y += pmu.o
|
||||
|
||||
perf-util-$(CONFIG_AUXTRACE) += auxtrace.o
|
||||
perf-util-y += auxtrace.o
|
||||
|
||||
@@ -3,9 +3,9 @@ perf-test-$(CONFIG_DWARF_UNWIND) += dwarf-unwind.o
|
||||
|
||||
perf-test-y += arch-tests.o
|
||||
perf-test-y += hybrid.o
|
||||
perf-test-$(CONFIG_AUXTRACE) += intel-pt-test.o
|
||||
perf-test-y += intel-pt-test.o
|
||||
ifeq ($(CONFIG_EXTRA_TESTS),y)
|
||||
perf-test-$(CONFIG_AUXTRACE) += insn-x86.o
|
||||
perf-test-y += insn-x86.o
|
||||
endif
|
||||
perf-test-$(CONFIG_X86_64) += bp-modify.o
|
||||
perf-test-y += amd-ibs-via-core-pmu.o
|
||||
|
||||
@@ -3,7 +3,6 @@
|
||||
#include "tests/tests.h"
|
||||
#include "arch-tests.h"
|
||||
|
||||
#ifdef HAVE_AUXTRACE_SUPPORT
|
||||
#ifdef HAVE_EXTRA_TESTS
|
||||
DEFINE_SUITE("x86 instruction decoder - new instructions", insn_x86);
|
||||
#endif
|
||||
@@ -19,7 +18,6 @@ struct test_suite suite__intel_pt = {
|
||||
.test_cases = intel_pt_tests,
|
||||
};
|
||||
|
||||
#endif
|
||||
#if defined(__x86_64__)
|
||||
DEFINE_SUITE("x86 bp modify", bp_modify);
|
||||
#endif
|
||||
@@ -39,12 +37,10 @@ struct test_suite *arch_tests[] = {
|
||||
#ifdef HAVE_DWARF_UNWIND_SUPPORT
|
||||
&suite__dwarf_unwind,
|
||||
#endif
|
||||
#ifdef HAVE_AUXTRACE_SUPPORT
|
||||
#ifdef HAVE_EXTRA_TESTS
|
||||
&suite__insn_x86,
|
||||
#endif
|
||||
&suite__intel_pt,
|
||||
#endif
|
||||
#if defined(__x86_64__)
|
||||
&suite__bp_modify,
|
||||
#endif
|
||||
|
||||
@@ -14,7 +14,7 @@ perf-util-y += iostat.o
|
||||
perf-util-$(CONFIG_LOCAL_LIBUNWIND) += unwind-libunwind.o
|
||||
perf-util-$(CONFIG_LIBDW_DWARF_UNWIND) += unwind-libdw.o
|
||||
|
||||
perf-util-$(CONFIG_AUXTRACE) += auxtrace.o
|
||||
perf-util-y += auxtrace.o
|
||||
perf-util-y += archinsn.o
|
||||
perf-util-$(CONFIG_AUXTRACE) += intel-pt.o
|
||||
perf-util-$(CONFIG_AUXTRACE) += intel-bts.o
|
||||
perf-util-y += intel-pt.o
|
||||
perf-util-y += intel-bts.o
|
||||
|
||||
@@ -273,7 +273,6 @@ void perf_pmu__arch_init(struct perf_pmu *pmu)
|
||||
{
|
||||
struct perf_pmu_caps *ldlat_cap;
|
||||
|
||||
#ifdef HAVE_AUXTRACE_SUPPORT
|
||||
if (!strcmp(pmu->name, INTEL_PT_PMU_NAME)) {
|
||||
pmu->auxtrace = true;
|
||||
pmu->selectable = true;
|
||||
@@ -283,7 +282,6 @@ void perf_pmu__arch_init(struct perf_pmu *pmu)
|
||||
pmu->auxtrace = true;
|
||||
pmu->selectable = true;
|
||||
}
|
||||
#endif
|
||||
|
||||
if (x86__is_amd_cpu()) {
|
||||
if (strcmp(pmu->name, "ibs_op"))
|
||||
|
||||
@@ -42,7 +42,6 @@ struct feature_status supported_features[] = {
|
||||
FEATURE_STATUS("dwarf", HAVE_LIBDW_SUPPORT),
|
||||
FEATURE_STATUS("dwarf_getlocations", HAVE_LIBDW_SUPPORT),
|
||||
FEATURE_STATUS("dwarf-unwind", HAVE_DWARF_UNWIND_SUPPORT),
|
||||
FEATURE_STATUS("auxtrace", HAVE_AUXTRACE_SUPPORT),
|
||||
FEATURE_STATUS_TIP("libbfd", HAVE_LIBBFD_SUPPORT, "Deprecated, license incompatibility, use BUILD_NONDISTRO=1 and install binutils-dev[el]"),
|
||||
FEATURE_STATUS("libbpf-strings", HAVE_LIBBPF_STRINGS_SUPPORT),
|
||||
FEATURE_STATUS("libcapstone", HAVE_LIBCAPSTONE_SUPPORT),
|
||||
|
||||
@@ -239,8 +239,6 @@ static int perf_event__repipe_event_update(const struct perf_tool *tool,
|
||||
return perf_event__repipe_synth(tool, event);
|
||||
}
|
||||
|
||||
#ifdef HAVE_AUXTRACE_SUPPORT
|
||||
|
||||
static int copy_bytes(struct perf_inject *inject, struct perf_data *data, off_t size)
|
||||
{
|
||||
char buf[4096];
|
||||
@@ -297,19 +295,6 @@ static s64 perf_event__repipe_auxtrace(const struct perf_tool *tool,
|
||||
return event->auxtrace.size;
|
||||
}
|
||||
|
||||
#else
|
||||
|
||||
static s64
|
||||
perf_event__repipe_auxtrace(const struct perf_tool *tool __maybe_unused,
|
||||
struct perf_session *session __maybe_unused,
|
||||
union perf_event *event __maybe_unused)
|
||||
{
|
||||
pr_err("AUX area tracing not supported\n");
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
static int perf_event__repipe(const struct perf_tool *tool,
|
||||
union perf_event *event,
|
||||
struct perf_sample *sample __maybe_unused,
|
||||
|
||||
@@ -730,8 +730,6 @@ static void record__sig_exit(void)
|
||||
raise(signr);
|
||||
}
|
||||
|
||||
#ifdef HAVE_AUXTRACE_SUPPORT
|
||||
|
||||
static int record__process_auxtrace(const struct perf_tool *tool,
|
||||
struct mmap *map,
|
||||
union perf_event *event, void *data1,
|
||||
@@ -889,40 +887,6 @@ static int record__auxtrace_init(struct record *rec)
|
||||
return auxtrace_parse_filters(rec->evlist);
|
||||
}
|
||||
|
||||
#else
|
||||
|
||||
static inline
|
||||
int record__auxtrace_mmap_read(struct record *rec __maybe_unused,
|
||||
struct mmap *map __maybe_unused)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
static inline
|
||||
void record__read_auxtrace_snapshot(struct record *rec __maybe_unused,
|
||||
bool on_exit __maybe_unused)
|
||||
{
|
||||
}
|
||||
|
||||
static inline
|
||||
int auxtrace_record__snapshot_start(struct auxtrace_record *itr __maybe_unused)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
static inline
|
||||
int record__auxtrace_snapshot_exit(struct record *rec __maybe_unused)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int record__auxtrace_init(struct record *rec __maybe_unused)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
static int record__config_text_poke(struct evlist *evlist)
|
||||
{
|
||||
struct evsel *evsel;
|
||||
|
||||
@@ -2000,7 +2000,6 @@ static int perf_sample__fprintf_synth_iflag_chg(struct perf_sample *sample, FILE
|
||||
return len + perf_sample__fprintf_pt_spacing(len, fp);
|
||||
}
|
||||
|
||||
#ifdef HAVE_AUXTRACE_SUPPORT
|
||||
static int perf_sample__fprintf_synth_vpadtl(struct perf_sample *data, FILE *fp)
|
||||
{
|
||||
struct powerpc_vpadtl_entry *dtl = (struct powerpc_vpadtl_entry *)data->raw_data;
|
||||
@@ -2019,13 +2018,6 @@ static int perf_sample__fprintf_synth_vpadtl(struct perf_sample *data, FILE *fp)
|
||||
|
||||
return len;
|
||||
}
|
||||
#else
|
||||
static int perf_sample__fprintf_synth_vpadtl(struct perf_sample *data __maybe_unused,
|
||||
FILE *fp __maybe_unused)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
#endif
|
||||
|
||||
static int perf_sample__fprintf_synth(struct perf_sample *sample,
|
||||
struct evsel *evsel, FILE *fp)
|
||||
@@ -3856,7 +3848,6 @@ static int process_feature_event(const struct perf_tool *tool __maybe_unused,
|
||||
return 0;
|
||||
}
|
||||
|
||||
#ifdef HAVE_AUXTRACE_SUPPORT
|
||||
static int perf_script__process_auxtrace_info(const struct perf_tool *tool,
|
||||
struct perf_session *session,
|
||||
union perf_event *event)
|
||||
@@ -3871,9 +3862,6 @@ static int perf_script__process_auxtrace_info(const struct perf_tool *tool,
|
||||
|
||||
return ret;
|
||||
}
|
||||
#else
|
||||
#define perf_script__process_auxtrace_info 0
|
||||
#endif
|
||||
|
||||
static int parse_insn_trace(const struct option *opt __maybe_unused,
|
||||
const char *str, int unset __maybe_unused)
|
||||
|
||||
@@ -88,7 +88,6 @@ make_no_backtrace := NO_BACKTRACE=1
|
||||
make_no_libcapstone := NO_CAPSTONE=1
|
||||
make_no_libnuma := NO_LIBNUMA=1
|
||||
make_no_libbionic := NO_LIBBIONIC=1
|
||||
make_no_auxtrace := NO_AUXTRACE=1
|
||||
make_no_libbpf := NO_LIBBPF=1
|
||||
make_libbpf_dynamic := LIBBPF_DYNAMIC=1
|
||||
make_no_libbpf_DEBUG := NO_LIBBPF=1 DEBUG=1
|
||||
@@ -121,7 +120,7 @@ make_static := LDFLAGS=-static NO_PERF_READ_VDSO32=1 NO_PERF_READ_VDSOX3
|
||||
make_minimal := NO_LIBPYTHON=1 NO_GTK2=1
|
||||
make_minimal += NO_DEMANGLE=1 NO_LIBELF=1 NO_BACKTRACE=1
|
||||
make_minimal += NO_LIBNUMA=1 NO_LIBBIONIC=1 NO_LIBDW=1
|
||||
make_minimal += NO_LIBDW_DWARF_UNWIND=1 NO_AUXTRACE=1 NO_LIBBPF=1
|
||||
make_minimal += NO_LIBDW_DWARF_UNWIND=1 NO_LIBBPF=1
|
||||
make_minimal += NO_SDT=1 NO_JVMTI=1 NO_LIBZSTD=1
|
||||
make_minimal += NO_LIBCAP=1 NO_CAPSTONE=1
|
||||
|
||||
@@ -158,7 +157,6 @@ run += make_no_backtrace
|
||||
run += make_no_libcapstone
|
||||
run += make_no_libnuma
|
||||
run += make_no_libbionic
|
||||
run += make_no_auxtrace
|
||||
run += make_no_libbpf
|
||||
run += make_no_libbpf_DEBUG
|
||||
run += make_no_libllvm
|
||||
|
||||
@@ -129,22 +129,22 @@ perf-util-y += iostat.o
|
||||
perf-util-y += stream.o
|
||||
perf-util-y += kvm-stat.o
|
||||
perf-util-y += lock-contention.o
|
||||
perf-util-$(CONFIG_AUXTRACE) += auxtrace.o
|
||||
perf-util-y += auxtrace.o
|
||||
perf-util-y += intel-pt-decoder/
|
||||
perf-util-$(CONFIG_AUXTRACE) += intel-pt.o
|
||||
perf-util-$(CONFIG_AUXTRACE) += intel-bts.o
|
||||
perf-util-$(CONFIG_AUXTRACE) += arm-spe.o
|
||||
perf-util-$(CONFIG_AUXTRACE) += arm-spe-decoder/
|
||||
perf-util-$(CONFIG_AUXTRACE) += hisi-ptt.o
|
||||
perf-util-$(CONFIG_AUXTRACE) += hisi-ptt-decoder/
|
||||
perf-util-$(CONFIG_AUXTRACE) += s390-cpumsf.o
|
||||
perf-util-$(CONFIG_AUXTRACE) += powerpc-vpadtl.o
|
||||
perf-util-y += intel-pt.o
|
||||
perf-util-y += intel-bts.o
|
||||
perf-util-y += arm-spe.o
|
||||
perf-util-y += arm-spe-decoder/
|
||||
perf-util-y += hisi-ptt.o
|
||||
perf-util-y += hisi-ptt-decoder/
|
||||
perf-util-y += s390-cpumsf.o
|
||||
perf-util-y += powerpc-vpadtl.o
|
||||
|
||||
ifdef CONFIG_LIBOPENCSD
|
||||
perf-util-$(CONFIG_AUXTRACE) += cs-etm.o
|
||||
perf-util-$(CONFIG_AUXTRACE) += cs-etm-decoder/
|
||||
perf-util-y += cs-etm.o
|
||||
perf-util-y += cs-etm-decoder/
|
||||
endif
|
||||
perf-util-$(CONFIG_AUXTRACE) += cs-etm-base.o
|
||||
perf-util-y += cs-etm-base.o
|
||||
|
||||
perf-util-y += parse-branch-options.o
|
||||
perf-util-y += dump-insn.o
|
||||
|
||||
@@ -1 +1 @@
|
||||
perf-util-$(CONFIG_AUXTRACE) += arm-spe-pkt-decoder.o arm-spe-decoder.o
|
||||
perf-util-y += arm-spe-pkt-decoder.o arm-spe-decoder.o
|
||||
|
||||
@@ -7,17 +7,12 @@
|
||||
#ifndef __PERF_AUXTRACE_H
|
||||
#define __PERF_AUXTRACE_H
|
||||
|
||||
#include <sys/types.h>
|
||||
#include <errno.h>
|
||||
#include <stdbool.h>
|
||||
#include <stddef.h>
|
||||
#include <stdio.h> // FILE
|
||||
#include <linux/list.h>
|
||||
#include <linux/perf_event.h>
|
||||
#include <linux/types.h>
|
||||
#include <perf/cpumap.h>
|
||||
#include <asm/bitsperlong.h>
|
||||
#include <asm/barrier.h>
|
||||
#include <perf/cpumap.h>
|
||||
|
||||
union perf_event;
|
||||
struct perf_session;
|
||||
@@ -459,8 +454,6 @@ struct addr_filters {
|
||||
|
||||
struct auxtrace_cache;
|
||||
|
||||
#ifdef HAVE_AUXTRACE_SUPPORT
|
||||
|
||||
u64 compat_auxtrace_mmap__read_head(struct auxtrace_mmap *mm);
|
||||
int compat_auxtrace_mmap__write_tail(struct auxtrace_mmap *mm, u64 tail);
|
||||
|
||||
@@ -706,215 +699,4 @@ void itrace_synth_opts__clear_time_range(struct itrace_synth_opts *opts)
|
||||
opts->range_num = 0;
|
||||
}
|
||||
|
||||
#else
|
||||
#include "debug.h"
|
||||
|
||||
static inline struct auxtrace_record *
|
||||
auxtrace_record__init(struct evlist *evlist __maybe_unused,
|
||||
int *err)
|
||||
{
|
||||
*err = 0;
|
||||
return NULL;
|
||||
}
|
||||
|
||||
static inline
|
||||
void auxtrace_record__free(struct auxtrace_record *itr __maybe_unused)
|
||||
{
|
||||
}
|
||||
|
||||
static inline
|
||||
int auxtrace_record__options(struct auxtrace_record *itr __maybe_unused,
|
||||
struct evlist *evlist __maybe_unused,
|
||||
struct record_opts *opts __maybe_unused)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
static inline
|
||||
int perf_event__process_auxtrace_info(const struct perf_tool *tool __maybe_unused,
|
||||
struct perf_session *session __maybe_unused,
|
||||
union perf_event *event __maybe_unused)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
static inline
|
||||
s64 perf_event__process_auxtrace(const struct perf_tool *tool __maybe_unused,
|
||||
struct perf_session *session __maybe_unused,
|
||||
union perf_event *event __maybe_unused)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
static inline
|
||||
int perf_event__process_auxtrace_error(const struct perf_tool *tool __maybe_unused,
|
||||
struct perf_session *session __maybe_unused,
|
||||
union perf_event *event __maybe_unused)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
static inline
|
||||
void perf_session__auxtrace_error_inc(struct perf_session *session
|
||||
__maybe_unused,
|
||||
union perf_event *event
|
||||
__maybe_unused)
|
||||
{
|
||||
}
|
||||
|
||||
static inline
|
||||
void events_stats__auxtrace_error_warn(const struct events_stats *stats
|
||||
__maybe_unused)
|
||||
{
|
||||
}
|
||||
|
||||
static inline
|
||||
int itrace_do_parse_synth_opts(struct itrace_synth_opts *synth_opts __maybe_unused,
|
||||
const char *str __maybe_unused, int unset __maybe_unused)
|
||||
{
|
||||
pr_err("AUX area tracing not supported\n");
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
static inline
|
||||
int itrace_parse_synth_opts(const struct option *opt __maybe_unused,
|
||||
const char *str __maybe_unused,
|
||||
int unset __maybe_unused)
|
||||
{
|
||||
pr_err("AUX area tracing not supported\n");
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
static inline
|
||||
int auxtrace_parse_snapshot_options(struct auxtrace_record *itr __maybe_unused,
|
||||
struct record_opts *opts __maybe_unused,
|
||||
const char *str)
|
||||
{
|
||||
if (!str)
|
||||
return 0;
|
||||
pr_err("AUX area tracing not supported\n");
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
static inline
|
||||
int auxtrace_parse_sample_options(struct auxtrace_record *itr __maybe_unused,
|
||||
struct evlist *evlist __maybe_unused,
|
||||
struct record_opts *opts __maybe_unused,
|
||||
const char *str)
|
||||
{
|
||||
if (!str)
|
||||
return 0;
|
||||
pr_err("AUX area tracing not supported\n");
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
static inline
|
||||
int auxtrace_parse_aux_action(struct evlist *evlist __maybe_unused)
|
||||
{
|
||||
pr_err("AUX area tracing not supported\n");
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
static inline
|
||||
int auxtrace__process_event(struct perf_session *session __maybe_unused,
|
||||
union perf_event *event __maybe_unused,
|
||||
struct perf_sample *sample __maybe_unused,
|
||||
const struct perf_tool *tool __maybe_unused)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
static inline
|
||||
void auxtrace__dump_auxtrace_sample(struct perf_session *session __maybe_unused,
|
||||
struct perf_sample *sample __maybe_unused)
|
||||
{
|
||||
}
|
||||
|
||||
static inline
|
||||
int auxtrace__flush_events(struct perf_session *session __maybe_unused,
|
||||
const struct perf_tool *tool __maybe_unused)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
static inline
|
||||
void auxtrace__free_events(struct perf_session *session __maybe_unused)
|
||||
{
|
||||
}
|
||||
|
||||
static inline
|
||||
void auxtrace_cache__free(struct auxtrace_cache *auxtrace_cache __maybe_unused)
|
||||
{
|
||||
}
|
||||
|
||||
static inline
|
||||
void auxtrace__free(struct perf_session *session __maybe_unused)
|
||||
{
|
||||
}
|
||||
|
||||
static inline
|
||||
int auxtrace_index__write(int fd __maybe_unused,
|
||||
struct list_head *head __maybe_unused)
|
||||
{
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
static inline
|
||||
int auxtrace_index__process(int fd __maybe_unused,
|
||||
u64 size __maybe_unused,
|
||||
struct perf_session *session __maybe_unused,
|
||||
bool needs_swap __maybe_unused)
|
||||
{
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
static inline
|
||||
void auxtrace_index__free(struct list_head *head __maybe_unused)
|
||||
{
|
||||
}
|
||||
|
||||
static inline
|
||||
bool auxtrace__evsel_is_auxtrace(struct perf_session *session __maybe_unused,
|
||||
struct evsel *evsel __maybe_unused)
|
||||
{
|
||||
return false;
|
||||
}
|
||||
|
||||
static inline
|
||||
int auxtrace_parse_filters(struct evlist *evlist __maybe_unused)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
int auxtrace_mmap__mmap(struct auxtrace_mmap *mm,
|
||||
struct auxtrace_mmap_params *mp,
|
||||
void *userpg, int fd);
|
||||
void auxtrace_mmap__munmap(struct auxtrace_mmap *mm);
|
||||
void auxtrace_mmap_params__init(struct auxtrace_mmap_params *mp,
|
||||
off_t auxtrace_offset,
|
||||
unsigned int auxtrace_pages,
|
||||
bool auxtrace_overwrite);
|
||||
void auxtrace_mmap_params__set_idx(struct auxtrace_mmap_params *mp,
|
||||
struct evlist *evlist,
|
||||
struct evsel *evsel, int idx);
|
||||
|
||||
#define ITRACE_HELP ""
|
||||
|
||||
static inline
|
||||
void itrace_synth_opts__set_time_range(struct itrace_synth_opts *opts
|
||||
__maybe_unused,
|
||||
struct perf_time_interval *ptime_range
|
||||
__maybe_unused,
|
||||
int range_num __maybe_unused)
|
||||
{
|
||||
}
|
||||
|
||||
static inline
|
||||
void itrace_synth_opts__clear_time_range(struct itrace_synth_opts *opts
|
||||
__maybe_unused)
|
||||
{
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
||||
@@ -1 +1 @@
|
||||
perf-util-$(CONFIG_AUXTRACE) += cs-etm-decoder.o
|
||||
perf-util-y += cs-etm-decoder.o
|
||||
|
||||
@@ -1 +1 @@
|
||||
perf-util-$(CONFIG_AUXTRACE) += hisi-ptt-pkt-decoder.o
|
||||
perf-util-y += hisi-ptt-pkt-decoder.o
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
perf-util-$(CONFIG_AUXTRACE) += intel-pt-pkt-decoder.o intel-pt-insn-decoder.o intel-pt-log.o intel-pt-decoder.o
|
||||
perf-util-y += intel-pt-pkt-decoder.o intel-pt-insn-decoder.o intel-pt-log.o intel-pt-decoder.o
|
||||
|
||||
inat_tables_script = $(srctree)/tools/arch/x86/tools/gen-insn-attr-x86.awk
|
||||
inat_tables_maps = $(srctree)/tools/arch/x86/lib/x86-opcode-map.txt
|
||||
@@ -7,11 +7,7 @@ $(OUTPUT)util/intel-pt-decoder/inat-tables.c: $(inat_tables_script) $(inat_table
|
||||
$(call rule_mkdir)
|
||||
@$(call echo-cmd,gen)$(AWK) -f $(inat_tables_script) $(inat_tables_maps) > $@ || rm -f $@
|
||||
|
||||
ifeq ($(SRCARCH),x86)
|
||||
perf-util-y += inat.o insn.o
|
||||
else
|
||||
perf-util-$(CONFIG_AUXTRACE) += inat.o insn.o
|
||||
endif
|
||||
perf-util-y += inat.o insn.o
|
||||
|
||||
$(OUTPUT)util/intel-pt-decoder/inat.o: $(srctree)/tools/arch/x86/lib/inat.c $(OUTPUT)util/intel-pt-decoder/inat-tables.c
|
||||
$(call rule_mkdir)
|
||||
|
||||
@@ -107,24 +107,9 @@ int machine__synthesize_threads(struct machine *machine, struct target *target,
|
||||
struct perf_thread_map *threads, bool needs_mmap, bool data_mmap,
|
||||
unsigned int nr_threads_synthesize);
|
||||
|
||||
#ifdef HAVE_AUXTRACE_SUPPORT
|
||||
int perf_event__synthesize_auxtrace_info(struct auxtrace_record *itr, const struct perf_tool *tool,
|
||||
struct perf_session *session, perf_event__handler_t process);
|
||||
|
||||
#else // HAVE_AUXTRACE_SUPPORT
|
||||
|
||||
#include <errno.h>
|
||||
|
||||
static inline int
|
||||
perf_event__synthesize_auxtrace_info(struct auxtrace_record *itr __maybe_unused,
|
||||
const struct perf_tool *tool __maybe_unused,
|
||||
struct perf_session *session __maybe_unused,
|
||||
perf_event__handler_t process __maybe_unused)
|
||||
{
|
||||
return -EINVAL;
|
||||
}
|
||||
#endif // HAVE_AUXTRACE_SUPPORT
|
||||
|
||||
#ifdef HAVE_LIBBPF_SUPPORT
|
||||
int perf_event__synthesize_bpf_events(struct perf_session *session, perf_event__handler_t process,
|
||||
struct machine *machine, struct record_opts *opts);
|
||||
|
||||
Reference in New Issue
Block a user