Commit e26e63be64a108c1fd12020b93b5b447ffe0532b
Committed by
Arnaldo Carvalho de Melo
1 parent
7e9fca51fb
Exists in
smarc_imx_lf-5.15.y
and in
27 other branches
perf build: Add sdt feature detection
This checks whether sys/sdt.h is available or not, which is required for DTRACE_PROBE(). We can disable this feature by passing NO_SDT=1 when building. This flag will be used for SDT test case and further SDT events in perftools. Signed-off-by: Masami Hiramatsu <mhiramat@kernel.org> Cc: Ananth N Mavinakayanahalli <ananth@linux.vnet.ibm.com> Cc: Brendan Gregg <brendan.d.gregg@gmail.com> Cc: Hemant Kumar <hemant@linux.vnet.ibm.com> Cc: Namhyung Kim <namhyung@kernel.org> Cc: Peter Zijlstra <peterz@infradead.org> Link: http://lkml.kernel.org/r/146831795615.17065.17513820540591053933.stgit@devbox Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Showing 7 changed files with 34 additions and 3 deletions Side-by-side Diff
tools/build/Makefile.feature
tools/build/feature/Makefile
... | ... | @@ -45,7 +45,8 @@ |
45 | 45 | test-zlib.bin \ |
46 | 46 | test-lzma.bin \ |
47 | 47 | test-bpf.bin \ |
48 | - test-get_cpuid.bin | |
48 | + test-get_cpuid.bin \ | |
49 | + test-sdt.bin | |
49 | 50 | |
50 | 51 | FILES := $(addprefix $(OUTPUT),$(FILES)) |
51 | 52 | |
... | ... | @@ -211,6 +212,9 @@ |
211 | 212 | $(BUILD) |
212 | 213 | |
213 | 214 | $(OUTPUT)test-bpf.bin: |
215 | + $(BUILD) | |
216 | + | |
217 | +$(OUTPUT)test-sdt.bin: | |
214 | 218 | $(BUILD) |
215 | 219 | |
216 | 220 | -include $(OUTPUT)*.d |
tools/build/feature/test-all.c
... | ... | @@ -145,6 +145,10 @@ |
145 | 145 | # include "test-libcrypto.c" |
146 | 146 | #undef main |
147 | 147 | |
148 | +#define main main_test_sdt | |
149 | +# include "test-sdt.c" | |
150 | +#undef main | |
151 | + | |
148 | 152 | int main(int argc, char *argv[]) |
149 | 153 | { |
150 | 154 | main_test_libpython(); |
... | ... | @@ -178,6 +182,7 @@ |
178 | 182 | main_test_get_cpuid(); |
179 | 183 | main_test_bpf(); |
180 | 184 | main_test_libcrypto(); |
185 | + main_test_sdt(); | |
181 | 186 | |
182 | 187 | return 0; |
183 | 188 | } |
tools/build/feature/test-sdt.c
tools/perf/Makefile.perf
... | ... | @@ -81,6 +81,9 @@ |
81 | 81 | # |
82 | 82 | # Define NO_LIBBPF if you do not want BPF support |
83 | 83 | # |
84 | +# Define NO_SDT if you do not want to define SDT event in perf tools, | |
85 | +# note that it doesn't disable SDT scanning support. | |
86 | +# | |
84 | 87 | # Define FEATURES_DUMP to provide features detection dump file |
85 | 88 | # and bypass the feature detection |
86 | 89 |
tools/perf/config/Makefile
... | ... | @@ -355,6 +355,16 @@ |
355 | 355 | endif # NO_LIBBPF |
356 | 356 | endif # NO_LIBELF |
357 | 357 | |
358 | +ifndef NO_SDT | |
359 | + ifneq ($(feature-sdt), 1) | |
360 | + msg := $(warning No sys/sdt.h found, no SDT events are defined, please install systemtap-sdt-devel or systemtap-sdt-dev); | |
361 | + NO_SDT := 1; | |
362 | + else | |
363 | + CFLAGS += -DHAVE_SDT_EVENT | |
364 | + $(call detected,CONFIG_SDT_EVENT) | |
365 | + endif | |
366 | +endif | |
367 | + | |
358 | 368 | ifdef PERF_HAVE_JITDUMP |
359 | 369 | ifndef NO_DWARF |
360 | 370 | $(call detected,CONFIG_JITDUMP) |
tools/perf/tests/make
... | ... | @@ -82,6 +82,7 @@ |
82 | 82 | make_no_libbpf := NO_LIBBPF=1 |
83 | 83 | make_no_libcrypto := NO_LIBCRYPTO=1 |
84 | 84 | make_with_babeltrace:= LIBBABELTRACE=1 |
85 | +make_no_sdt := NO_SDT=1 | |
85 | 86 | make_tags := tags |
86 | 87 | make_cscope := cscope |
87 | 88 | make_help := help |
... | ... | @@ -105,7 +106,7 @@ |
105 | 106 | make_minimal += NO_DEMANGLE=1 NO_LIBELF=1 NO_LIBUNWIND=1 NO_BACKTRACE=1 |
106 | 107 | make_minimal += NO_LIBNUMA=1 NO_LIBAUDIT=1 NO_LIBBIONIC=1 |
107 | 108 | make_minimal += NO_LIBDW_DWARF_UNWIND=1 NO_AUXTRACE=1 NO_LIBBPF=1 |
108 | -make_minimal += NO_LIBCRYPTO=1 | |
109 | +make_minimal += NO_LIBCRYPTO=1 NO_SDT=1 | |
109 | 110 | |
110 | 111 | # $(run) contains all available tests |
111 | 112 | run := make_pure |