Date: Wed, 19 Apr 2006 23:20:37 GMT From: John Birrell <jb@FreeBSD.org> To: Perforce Change Reviews <perforce@freebsd.org> Subject: PERFORCE change 95637 for review Message-ID: <200604192320.k3JNKbqf018650@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
http://perforce.freebsd.org/chv.cgi?CH=95637 Change 95637 by jb@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);
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200604192320.k3JNKbqf018650>