aboutsummaryrefslogtreecommitdiffstats
path: root/include/sys/trace_acl.h
diff options
context:
space:
mode:
authorBrad Lewis <[email protected]>2019-07-08 12:20:53 -0600
committerBrian Behlendorf <[email protected]>2019-07-08 11:20:53 -0700
commitcb709642216b5ac9be10039471c3c4bc27cb7cf2 (patch)
tree9bad20f8aafa6d1a53773ef9758614b6135f4f31 /include/sys/trace_acl.h
parent1086f54219ebcdebf05b8f6bd10142c43c1f4f3f (diff)
8659 static dtrace probes unavailable on non-GPL modules
ZFS tracing efforts are hampered by the inability to access zfs static probes(probes using DTRACE_PROBE macros). The probes are available via tracepoints for GPL modules only. The build could be modified to generate a function for each unique DTRACE_PROBE invocation. These could be then accessed via kprobes. Reviewed-by: Brian Behlendorf <[email protected]> Reviewed-by: Matt Ahrens <[email protected]> Reviewed-by: Richard Elling <[email protected]> Signed-off-by: Brad Lewis <[email protected]> Closes #8659 Closes #8663
Diffstat (limited to 'include/sys/trace_acl.h')
-rw-r--r--include/sys/trace_acl.h12
1 files changed, 10 insertions, 2 deletions
diff --git a/include/sys/trace_acl.h b/include/sys/trace_acl.h
index 610bbe29c..083560952 100644
--- a/include/sys/trace_acl.h
+++ b/include/sys/trace_acl.h
@@ -19,7 +19,8 @@
* CDDL HEADER END
*/
-#if defined(_KERNEL) && defined(HAVE_DECLARE_EVENT_CLASS)
+#if defined(_KERNEL)
+#if defined(HAVE_DECLARE_EVENT_CLASS)
#undef TRACE_SYSTEM
#define TRACE_SYSTEM zfs
@@ -153,4 +154,11 @@ DEFINE_ACE_EVENT(zfs_zfs__ace__allows);
#define TRACE_INCLUDE_FILE trace_acl
#include <trace/define_trace.h>
-#endif /* _KERNEL && HAVE_DECLARE_EVENT_CLASS */
+#else
+
+DEFINE_DTRACE_PROBE3(zfs__ace__denies);
+DEFINE_DTRACE_PROBE3(zfs__ace__allows);
+DEFINE_DTRACE_PROBE(zfs__fastpath__execute__access__miss);
+
+#endif /* HAVE_DECLARE_EVENT_CLASS */
+#endif /* _KERNEL */