Index: kern/kern_priv.c
===================================================================
--- kern/kern_priv.c	(revision 189276)
+++ kern/kern_priv.c	(working copy)
@@ -61,13 +61,9 @@
 TUNABLE_INT("security.bsd.suser_enabled", &suser_enabled);
 
 SDT_PROVIDER_DEFINE(priv);
+SDT_PROBE_DEFINE1(priv, kernel, priv_check, priv_ok, "int");
+SDT_PROBE_DEFINE1(priv, kernel, priv_check, priv_err, "int");
 
-SDT_PROBE_DEFINE(priv, kernel, priv_check, priv_ok);
-SDT_PROBE_ARGTYPE(priv, kernel, priv_check, priv_ok, 0, "int");
-
-SDT_PROBE_DEFINE(priv, kernel, priv_check, priv_err);
-SDT_PROBE_ARGTYPE(priv, kernel, priv_check, priv_err, 0, "int");
-
 /*
  * Check a credential for privilege.  Lots of good reasons to deny privilege;
  * only a few to grant it.
Index: security/mac/mac_framework.c
===================================================================
--- security/mac/mac_framework.c	(revision 189276)
+++ security/mac/mac_framework.c	(working copy)
@@ -88,20 +88,11 @@
  * DTrace SDT provider for MAC.
  */
 SDT_PROVIDER_DEFINE(mac);
-
-SDT_PROBE_DEFINE(mac, kernel, policy, modevent);
-SDT_PROBE_ARGTYPE(mac, kernel, policy, modevent, 0, "int");
-SDT_PROBE_ARGTYPE(mac, kernel, policy, modevent, 1,
+SDT_PROBE_DEFINE2(mac, kernel, policy, modevent, "int",
     "struct mac_policy_conf *mpc");
+SDT_PROBE_DEFINE1(mac, kernel, policy, register, "struct mac_policy_conf *");
+SDT_PROBE_DEFINE1(mac, kernel, policy, unregister, "struct mac_policy_conf *");
 
-SDT_PROBE_DEFINE(mac, kernel, policy, register);
-SDT_PROBE_ARGTYPE(mac, kernel, policy, register, 0,
-    "struct mac_policy_conf *");
-
-SDT_PROBE_DEFINE(mac, kernel, policy, unregister);
-SDT_PROBE_ARGTYPE(mac, kernel, policy, unregister, 0,
-    "struct mac_policy_conf *");
-
 /*
  * Root sysctl node for all MAC and MAC policy controls.
  */
Index: sys/sdt.h
===================================================================
--- sys/sdt.h	(revision 189276)
+++ sys/sdt.h	(working copy)
@@ -53,6 +53,12 @@
 #define SDT_PROBE(prov, mod, func, name, arg0, arg1, arg2, arg3, arg4)
 #define SDT_PROBE_ARGTYPE(prov, mod, func, name, num, type)
 
+#define	SDT_PROBE_DEFINE1(prov, mod, func, name, arg0)
+#define	SDT_PROBE_DEFINE2(prov, mod, func, name, arg0, arg1)
+#define	SDT_PROBE_DEFINE3(prov, mod, func, name, arg0, arg1, arg2)
+#define	SDT_PROBE_DEFINE4(prov, mod, func, name, arg0, arg1, arg2, arg3)
+#define	SDT_PROBE_DEFINE5(prov, mod, func, name, arg0, arg1, arg2, arg3, arg4)
+
 #else
 
 /*
@@ -156,6 +162,36 @@
 	    SI_SUB_KDTRACE, SI_ORDER_SECOND + 2, sdt_argtype_deregister,	\
 	    sdt_##prov##_##mod##_##func##_##name##num )
 
+#define	SDT_PROBE_DEFINE1(prov, mod, func, name, arg0)			\
+	SDT_PROBE_DEFINE(prov, mod, func, name);			\
+	SDT_PROBE_ARGTYPE(prov, mod, func, name, 0, arg0)
+
+#define	SDT_PROBE_DEFINE2(prov, mod, func, name, arg0, arg1)		\
+	SDT_PROBE_DEFINE(prov, mod, func, name);			\
+	SDT_PROBE_ARGTYPE(prov, mod, func, name, 0, arg0)		\
+	SDT_PROBE_ARGTYPE(prov, mod, func, name, 1, arg1)
+
+#define	SDT_PROBE_DEFINE3(prov, mod, func, name, arg0, arg1, arg2)	\
+	SDT_PROBE_DEFINE(prov, mod, func, name);			\
+	SDT_PROBE_ARGTYPE(prov, mod, func, name, 0, arg0)		\
+	SDT_PROBE_ARGTYPE(prov, mod, func, name, 1, arg1)		\
+	SDT_PROBE_ARGTYPE(prov, mod, func, name, 2, arg2)
+
+#define	SDT_PROBE_DEFINE4(prov, mod, func, name, arg0, arg1, arg2, arg3) \
+	SDT_PROBE_DEFINE(prov, mod, func, name);			\
+	SDT_PROBE_ARGTYPE(prov, mod, func, name, 0, arg0)		\
+	SDT_PROBE_ARGTYPE(prov, mod, func, name, 1, arg1)		\
+	SDT_PROBE_ARGTYPE(prov, mod, func, name, 2, arg2)		\
+	SDT_PROBE_ARGTYPE(prov, mod, func, name, 3, arg3)
+
+#define	SDT_PROBE_DEFINE5(prov, mod, func, name, arg0, arg1, arg2, arg3, arg4) \
+	SDT_PROBE_DEFINE(prov, mod, func, name);			\
+	SDT_PROBE_ARGTYPE(prov, mod, func, name, 0, arg0)		\
+	SDT_PROBE_ARGTYPE(prov, mod, func, name, 1, arg1)		\
+	SDT_PROBE_ARGTYPE(prov, mod, func, name, 2, arg2)		\
+	SDT_PROBE_ARGTYPE(prov, mod, func, name, 3, arg3)		\
+	SDT_PROBE_ARGTYPE(prov, mod, func, name, 4, arg4)
+
 typedef int (*sdt_argtype_listall_func_t)(struct sdt_argtype *, void *);
 typedef int (*sdt_probe_listall_func_t)(struct sdt_probe *, void *);
 typedef int (*sdt_provider_listall_func_t)(struct sdt_provider *, void *);
