summaryrefslogtreecommitdiff
path: root/sys/include
diff options
context:
space:
mode:
authoraiju <devnull@localhost>2018-12-09 21:43:22 +0000
committeraiju <devnull@localhost>2018-12-09 21:43:22 +0000
commitca851bbb5e93d6f208d967edd898e7042833889b (patch)
tree202ceb2a6c8411c5bc8d898bca85522a9274c665 /sys/include
parentb96be173766c58ccfcc3abc84bd751ba000be838 (diff)
dtracy: call dtptrigger with a struct pointer rather than a list of arguments; put return value in arg9
Diffstat (limited to 'sys/include')
-rw-r--r--sys/include/dtracy.h15
1 files changed, 14 insertions, 1 deletions
diff --git a/sys/include/dtracy.h b/sys/include/dtracy.h
index 208b4a687..3e2ff81f1 100644
--- a/sys/include/dtracy.h
+++ b/sys/include/dtracy.h
@@ -30,6 +30,7 @@ typedef struct DTExpr DTExpr;
typedef struct DTProvider DTProvider;
typedef struct DTAgg DTAgg;
typedef struct DTBuf DTBuf;
+typedef struct DTTrigInfo DTTrigInfo;
struct DTName {
char *provider;
@@ -223,13 +224,25 @@ struct DTChan {
DTEnab *enab;
};
+/* this struct collects the state during the execution of a probe */
+struct DTTrigInfo {
+ /* filled in by caller of dtptrigger */
+ u64int arg[10];
+ /* filled in by dtptrigger */
+ int machno;
+ int epid;
+ u64int ts;
+ DTChan *ch;
+};
+
+
void dtinit(int);
void dtsync(void);
/* probe functions */
DTProbe *dtpnew(DTName, DTProvider *, void *aux);
int dtpmatch(DTName, DTProbe ***);
-void dtptrigger(DTProbe *, int, uvlong, uvlong, uvlong, uvlong);
+void dtptrigger(DTProbe *, int, DTTrigInfo *);
/* expression functions */
int dteverify(DTExpr *);