PERFORCE change 96034 for review
John Birrell
jb at FreeBSD.org
Mon Apr 24 23:42:57 UTC 2006
http://perforce.freebsd.org/chv.cgi?CH=96034
Change 96034 by jb at jb_freebsd2 on 2006/04/24 23:42:49
Add the DTrace specific fields to 'struct thread'.
Affected files ...
.. //depot/projects/dtrace/src/sys/sys/proc.h#3 edit
Differences ...
==== //depot/projects/dtrace/src/sys/sys/proc.h#3 (text+ko) ====
@@ -331,6 +331,44 @@
struct mdthread td_md; /* (k) Any machine-dependent fields. */
struct td_sched *td_sched; /* (*) Scheduler-specific data. */
struct kaudit_record *td_ar; /* (k) Active audit record, if any. */
+
+/* Start of DTrace-specific fields. */
+ u_int td_predcache; /* DTrace predicate cache */
+ u_int64_t td_dtrace_vtime;
+ /* DTrace virtual time */
+ u_int64_t td_dtrace_start;
+ /* DTrace slice start time */
+
+ u_int8_t td_dtrace_stop; /* Indicates a DTrace-desired stop */
+ u_int8_t td_dtrace_sig; /* Signal sent via DTrace's raise() */
+
+ union __tdu {
+ struct __tds {
+ u_int8_t _td_dtrace_on;
+ /* Hit a fasttrap tracepoint. */
+ u_int8_t _td_dtrace_step;
+ /* About to return to kernel. */
+ u_int8_t _td_dtrace_ret;
+ /* Handling a return probe. */
+ u_int8_t _td_dtrace_ast;
+ /* Saved ast flag. */
+ } _tds;
+ u_long _td_dtrace_ft; /* Bitwise or of these flags. */
+ } _tdu;
+#define td_dtrace_ft _tdu._td_dtrace_ft
+#define td_dtrace_on _tdu._tds._td_dtrace_on
+#define td_dtrace_step _tdu._tds._td_dtrace_step
+#define td_dtrace_ret _tdu._tds._td_dtrace_ret
+#define td_dtrace_ast _tdu._tds._td_dtrace_ast
+
+ uintptr_t td_dtrace_pc; /* DTrace saved pc from fasttrap. */
+ uintptr_t td_dtrace_npc; /* DTrace next pc from fasttrap. */
+ uintptr_t td_dtrace_scrpc;
+ /* DTrace per-thread scratch location. */
+ uintptr_t td_dtrace_astpc;
+ /* DTrace return sequence location. */
+ u_int64_t td_hrtime; /* Last time on cpu. */
+/* End of DTrace-specific fields. */
};
/*
More information about the p4-projects
mailing list