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 <[email protected]>
Cc: Ananth N Mavinakayanahalli <[email protected]>
Cc: Brendan Gregg <[email protected]>
Cc: Hemant Kumar <[email protected]>
Cc: Namhyung Kim <[email protected]>
Cc: Peter Zijlstra <[email protected]>
Link: http://lkml.kernel.org/r/146831795615.17065.17513820540591053933.stgit@devbox
Signed-off-by: Arnaldo Carvalho de Melo <[email protected]>
This commit is contained in:
Masami Hiramatsu 2016-07-12 19:05:56 +09:00 • committed by Arnaldo Carvalho de Melo
commit e26e63be64
7 changed files with 34 additions and 3 deletions

View file

@ -62,7 +62,8 @@ FEATURE_TESTS_BASIC := \
zlib \
lzma \
get_cpuid \
bpf
bpf \
sdt
# FEATURE_TESTS_BASIC + FEATURE_TESTS_EXTRA is the complete list
# of all feature tests

View file

@ -45,7 +45,8 @@ FILES= \
test-zlib.bin \
test-lzma.bin \
test-bpf.bin \
test-get_cpuid.bin
test-get_cpuid.bin \
test-sdt.bin
FILES := $(addprefix $(OUTPUT),$(FILES))
@ -213,6 +214,9 @@ $(OUTPUT)test-get_cpuid.bin:
$(OUTPUT)test-bpf.bin:
$(BUILD)
$(OUTPUT)test-sdt.bin:
$(BUILD)
-include $(OUTPUT)*.d
###############################

View file

@ -145,6 +145,10 @@
# include "test-libcrypto.c"
#undef main
#define main main_test_sdt
# include "test-sdt.c"
#undef main
int main(int argc, char *argv[])
{
main_test_libpython();
@ -178,6 +182,7 @@ int main(int argc, char *argv[])
main_test_get_cpuid();
main_test_bpf();
main_test_libcrypto();
main_test_sdt();
return 0;
}

View file

@ -0,0 +1,7 @@
#include <sys/sdt.h>
int main(void)
{
DTRACE_PROBE(provider, name);
return 0;
}