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 <behlendorf1@llnl.gov>
Reviewed-by: Matt Ahrens <matt@delphix.com>
Reviewed-by: Richard Elling <Richard.Elling@RichardElling.com>
Signed-off-by: Brad Lewis <brad.lewis@delphix.com>
Closes #8659 
Closes #8663
This commit is contained in:
Brad Lewis
2019-07-08 12:20:53 -06:00
committed by Brian Behlendorf
parent 1086f54219
commit cb70964221
18 changed files with 303 additions and 57 deletions
+1
View File
@@ -28,6 +28,7 @@
#include <sys/refcount.h>
#include <sys/rrwlock.h>
#include <sys/trace_rrwlock.h>
/*
* This file contains the implementation of a re-entrant read
+4 -2
View File
@@ -18,9 +18,10 @@
*
* CDDL HEADER END
*/
/*
* Each Linux tracepoints subsystem must define CREATE_TRACE_POINTS in one
* (and only one) C file, so this dummy file exists for that purpose.
* Each DTRACE_PROBE must define its trace point in one (and only one)
* source file, so this dummy file exists for that purpose.
*/
#include <sys/multilist.h>
@@ -45,6 +46,7 @@
#include <sys/trace_dmu.h>
#include <sys/trace_dnode.h>
#include <sys/trace_multilist.h>
#include <sys/trace_rrwlock.h>
#include <sys/trace_txg.h>
#include <sys/trace_vdev.h>
#include <sys/trace_zil.h>