PERFORCE change 95637 for review
John Birrell
jb at FreeBSD.org
Wed Apr 19 23:20:39 UTC 2006
http://perforce.freebsd.org/chv.cgi?CH=95637
Change 95637 by jb at jb_freebsd2 on 2006/04/19 23:19:58
Hack up this code a bit as a temporary measure to avoid addressing
some low level stuff which is at least operating system dependent.
I need to learn a bit more about how DTrace works internally before
porting that stuff.
Affected files ...
.. //depot/projects/dtrace/src/sys/contrib/opensolaris/uts/common/sys/dtrace_impl.h#2 edit
Differences ...
==== //depot/projects/dtrace/src/sys/contrib/opensolaris/uts/common/sys/dtrace_impl.h#2 (text) ====
@@ -26,7 +26,9 @@
#ifndef _SYS_DTRACE_IMPL_H
#define _SYS_DTRACE_IMPL_H
+#if defined(sun)
#pragma ident "@(#)dtrace_impl.h 1.20 06/04/03 SMI"
+#endif
#ifdef __cplusplus
extern "C" {
@@ -43,7 +45,12 @@
* Please refer to the "Solaris Dynamic Tracing Guide" for more information.
*/
+#if defined(sun)
#include <sys/dtrace.h>
+#else
+#include <contrib/opensolaris/uts/common/sys/dtrace.h>
+#include <contrib/opensolaris/compat/sys/time.h>
+#endif
/*
* DTrace Implementation Constants and Typedefs
@@ -1102,7 +1109,9 @@
int dts_nspeculations; /* number of speculations */
int dts_naggregations; /* number of aggregations */
dtrace_aggregation_t **dts_aggregations; /* aggregation array */
+#ifdef DOODAD
vmem_t *dts_aggid_arena; /* arena for aggregation IDs */
+#endif
uint64_t dts_errors; /* total number of errors */
uint32_t dts_speculations_busy; /* number of spec. busy */
uint32_t dts_speculations_unavail; /* number of spec unavail */
@@ -1110,8 +1119,10 @@
uint32_t dts_dblerrors; /* errors in ERROR probes */
uint32_t dts_reserve; /* space reserved for END */
hrtime_t dts_laststatus; /* time of last status */
+#ifdef DOODAD
cyclic_id_t dts_cleaner; /* cleaning cyclic */
cyclic_id_t dts_deadman; /* deadman cyclic */
+#endif
hrtime_t dts_alive; /* time last alive */
char dts_speculates; /* boolean: has speculations */
char dts_destructive; /* boolean: has dest. actions */
@@ -1223,7 +1234,9 @@
} dtrace_toxrange_t;
extern uint64_t dtrace_getarg(int, int);
+#ifdef DOODAD
extern greg_t dtrace_getfp(void);
+#endif
extern int dtrace_getipl(void);
extern uintptr_t dtrace_caller(int);
extern uint32_t dtrace_cas32(uint32_t *, uint32_t, uint32_t);
@@ -1232,8 +1245,10 @@
extern void dtrace_copyinstr(uintptr_t, uintptr_t, size_t);
extern void dtrace_copyout(uintptr_t, uintptr_t, size_t);
extern void dtrace_copyoutstr(uintptr_t, uintptr_t, size_t);
+#ifdef DOODAD
extern void dtrace_getpcstack(pc_t *, int, int, uint32_t *);
extern ulong_t dtrace_getreg(struct regs *, uint_t);
+#endif
extern int dtrace_getstackdepth(int);
extern void dtrace_getupcstack(uint64_t *, int);
extern void dtrace_getufpstack(uint64_t *, uint64_t *, int);
@@ -1247,7 +1262,7 @@
int, uintptr_t);
extern int dtrace_assfail(const char *, const char *, int);
extern int dtrace_attached(void);
-extern hrtime_t dtrace_gethrestime();
+extern hrtime_t dtrace_gethrestime(void);
#ifdef __sparc
extern void dtrace_flush_windows(void);
More information about the p4-projects
mailing list