]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
dtrace: make perf-events probes separately configured
authorNick Alcock <nick.alcock@oracle.com>
Mon, 23 May 2016 09:46:23 +0000 (10:46 +0100)
committerNick Alcock <nick.alcock@oracle.com>
Mon, 4 Jul 2016 16:14:29 +0000 (17:14 +0100)
This makes them look like every other provider, and lets us
conditionalize them on CONFIG_TRACEPOINTS, like other tracepoint users
do.

Orabug: 23004534
Signed-off-by: Nick Alcock <nick.alcock@oracle.com>
Acked-by: Kris Van Hees <kris.van.hees@oracle.com>
include/linux/sdt.h
kernel/dtrace/Kconfig

index c44db3de6654954402c32c6fd8f5349c5be8f00e..1a745548e9157eda15044db8b3b2d8840d618714 100644 (file)
@@ -122,6 +122,8 @@ extern "C" {
            (uintptr_t)(arg6), (uintptr_t)(arg7), (uintptr_t)(arg8));   \
 }
 
+#ifdef CONFIG_DT_SDT_PERF
+
 /* This counts the number of args */
 #define DTRACE_NARGS_SEQ(_1,_2,_3,_4,_5,_6,_7,_8,_9,_10,_11,_12,_13,_14,_15,_16,_17,_18,N,...) N
 #define DTRACE_NARGS(...) DTRACE_NARGS_SEQ(__VA_ARGS__, 18, 17, 16, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1)
@@ -184,6 +186,12 @@ extern "C" {
        __dtrace_probe_##name(DTRACE_APPLY(DTRACE_UINTPTR_CAST_EACH, args));    \
 }
 
+#else
+
+#define DTRACE_PROBE_TRACEPOINT(name, args...)
+
+#endif
+
 typedef struct sdt_probedesc {
        char                    *sdpd_name;     /* probe name */
        char                    *sdpd_func;     /* probe function */
index 80a0262d3d94ed4fe3c15967aa3bb4dd1101b6a7..b5747c77a2ddcb4147aa171f2e3494af7b1a114a 100644 (file)
@@ -46,6 +46,14 @@ config DT_SDT
        help
          To be written.
 
+config DT_SDT_PERF
+       bool "DTrace perf-events Probes"
+       default y
+        depends on DT_SDT
+        select TRACEPOINTS
+       help
+         To be written.
+
 config DT_SYSTRACE
        tristate "System Call Tracing"
        default m