diff -r 831f6ce59a8c usr/src/lib/libdtrace/common/drti.c
--- a/usr/src/lib/libdtrace/common/drti.c	Wed Jul 23 21:25:00 2008 -0500
+++ b/usr/src/lib/libdtrace/common/drti.c	Sat Sep 20 08:34:31 2008 -0500
@@ -20,7 +20,7 @@
  * CDDL HEADER END
  */
 /*
- * Copyright 2005 Sun Microsystems, Inc.  All rights reserved.
+ * Copyright 2008 Sun Microsystems, Inc.  All rights reserved.
  * Use is subject to license terms.
  */
 
@@ -61,13 +61,14 @@
 static const char *modname;	/* Name of this load object */
 static int gen;			/* DOF helper generation */
 extern dof_hdr_t __SUNW_dof;	/* DOF defined in the .SUNW_dof section */
+static boolean_t dof_init_debug = B_FALSE;	/* From DTRACE_DOF_INIT_DEBUG */
 
 static void
 dprintf(int debug, const char *fmt, ...)
 {
 	va_list ap;
 
-	if (debug && getenv("DTRACE_DOF_INIT_DEBUG") == NULL)
+	if (debug && dof_init_debug == B_FALSE)
 		return;
 
 	va_start(ap, fmt);
@@ -103,6 +104,9 @@
 
 	if (getenv("DTRACE_DOF_INIT_DISABLE") != NULL)
 		return;
+
+	if (getenv("DTRACE_DOF_INIT_DEBUG") != NULL)
+		dof_init_debug = B_TRUE;
 
 	if (dlinfo(RTLD_SELF, RTLD_DI_LINKMAP, &lmp) == -1 || lmp == NULL) {
 		dprintf(1, "couldn't discover module name or address\n");
