Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 21 Mar 2008 23:25:58 GMT
From:      John Birrell <jb@FreeBSD.org>
To:        Perforce Change Reviews <perforce@freebsd.org>
Subject:   PERFORCE change 138260 for review
Message-ID:  <200803212325.m2LNPwAV041943@repoman.freebsd.org>

next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=138260

Change 138260 by jb@jb_freebsd8 on 2008/03/21 23:25:48

	Disable probes when a panic is active like on Solaris.
	
	Include dtrace_isa.c (the Instruction Specific Architecture [?]) specific
	file using the include paths. This ensures that the i386 version is
	included rather than the amd64 one, although they could probably share
	the same file.

Affected files ...

.. //depot/projects/dtrace/src/sys/contrib/opensolaris/uts/common/dtrace/dtrace.c#42 edit

Differences ...

==== //depot/projects/dtrace/src/sys/contrib/opensolaris/uts/common/dtrace/dtrace.c#42 (text) ====

@@ -487,7 +487,6 @@
 									\
 		if (addr + size <= dtrace_toxrange[i].dtt_base)		\
 			continue;					\
-dtrace_debug_printf("%s: 0x%lx <= addr 0x%lx <= 0x%lx\n", __func__,(u_long) dtrace_toxrange[i].dtt_base,(u_long) addr,(u_long) dtrace_toxrange[i].dtt_limit); \
 									\
 		/*							\
 		 * This address falls within a toxic region; return 0.	\
@@ -5788,13 +5787,15 @@
 
 #if defined(sun)
 	if (panic_quiesce) {
+#else
+	if (panicstr != NULL) {
+#endif
 		/*
 		 * We don't trace anything if we're panicking.
 		 */
 		dtrace_interrupt_enable(cookie);
 		return;
 	}
-#endif
 
 	now = dtrace_gethrtime();
 	vtime = dtrace_vtime_references != 0;
@@ -6057,7 +6058,6 @@
 				    size / sizeof (pc_t), probe->dtpr_aframes,
 				    DTRACE_ANCHORED(probe) ? NULL :
 				    (uint32_t *)arg0);
-
 				continue;
 
 			case DTRACEACT_JSTACK:
@@ -16313,9 +16313,7 @@
 #include <dtrace_unload.c>
 #include <dtrace_vtime.c>
 #include <dtrace_hacks.c>
-#if defined(__amd64__) || defined(__i386__)
-#include <amd64/dtrace_isa.c>
-#endif
+#include <dtrace_isa.c>
 
 SYSINIT(dtrace_load, SI_SUB_DTRACE, SI_ORDER_FIRST, dtrace_load, NULL);
 SYSUNINIT(dtrace_unload, SI_SUB_DTRACE, SI_ORDER_FIRST, dtrace_unload, NULL);



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200803212325.m2LNPwAV041943>