Author: rpaulo
Date: Sun Aug 22 11:04:43 2010
New Revision: 211610
URL: http://svn.freebsd.org/changeset/base/211610

Log:
  Add more compatibility structure members needed by the upcoming fasttrap
  DTrace device.
  
  Sponsored by: The FreeBSD Foundation

Modified:
  head/sys/cddl/dev/dtrace/dtrace_cddl.h

Modified: head/sys/cddl/dev/dtrace/dtrace_cddl.h
==============================================================================
--- head/sys/cddl/dev/dtrace/dtrace_cddl.h      Sun Aug 22 11:04:30 2010        
(r211609)
+++ head/sys/cddl/dev/dtrace/dtrace_cddl.h      Sun Aug 22 11:04:43 2010        
(r211610)
@@ -36,6 +36,7 @@ typedef struct kdtrace_proc {
        int             p_dtrace_probes;        /* Are there probes for this 
proc? */
        u_int64_t       p_dtrace_count;         /* Number of DTrace tracepoints 
*/
        void            *p_dtrace_helpers;      /* DTrace helpers, if any */
+       int             p_dtrace_model;
 
 } kdtrace_proc_t;
 
@@ -59,6 +60,9 @@ typedef struct kdtrace_thread {
                                        /* Handling a return probe. */
                        u_int8_t        _td_dtrace_ast;
                                        /* Saved ast flag. */
+#ifdef __amd64__
+                       u_int8_t        _td_dtrace_reg;
+#endif
                } _tds;
                u_long  _td_dtrace_ft;  /* Bitwise or of these flags. */
        } _tdu;
@@ -67,6 +71,7 @@ typedef struct kdtrace_thread {
 #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
+#define        td_dtrace_reg   _tdu._tds._td_dtrace_reg
 
        uintptr_t       td_dtrace_pc;   /* DTrace saved pc from fasttrap. */
        uintptr_t       td_dtrace_npc;  /* DTrace next pc from fasttrap. */
@@ -74,6 +79,9 @@ typedef struct kdtrace_thread {
                                        /* DTrace per-thread scratch location. 
*/
        uintptr_t       td_dtrace_astpc;
                                        /* DTrace return sequence location. */
+#ifdef __amd64__
+       uintptr_t       td_dtrace_regv;
+#endif
        u_int64_t       td_hrtime;      /* Last time on cpu. */
        int             td_errno;       /* Syscall return value. */
 } kdtrace_thread_t;
@@ -89,16 +97,38 @@ typedef struct kdtrace_thread {
 #define        t_dtrace_stop   td_dtrace->td_dtrace_stop
 #define        t_dtrace_sig    td_dtrace->td_dtrace_sig
 #define        t_predcache     td_dtrace->td_predcache
-#define p_dtrace_helpers       p_dtrace->p_dtrace_helpers
+#define        t_dtrace_ft     td_dtrace->td_dtrace_ft
+#define        t_dtrace_on     td_dtrace->td_dtrace_on
+#define        t_dtrace_step   td_dtrace->td_dtrace_step
+#define        t_dtrace_ret    td_dtrace->td_dtrace_ret
+#define        t_dtrace_ast    td_dtrace->td_dtrace_ast
+#define        t_dtrace_reg    td_dtrace->td_dtrace_reg
+#define        t_dtrace_pc     td_dtrace->td_dtrace_pc
+#define        t_dtrace_npc    td_dtrace->td_dtrace_npc
+#define        t_dtrace_scrpc  td_dtrace->td_dtrace_scrpc
+#define        t_dtrace_astpc  td_dtrace->td_dtrace_astpc
+#define        t_dtrace_regv   td_dtrace->td_dtrace_regv
+#define        p_dtrace_helpers        p_dtrace->p_dtrace_helpers
+#define        p_dtrace_count  p_dtrace->p_dtrace_count
+#define        p_dtrace_probes p_dtrace->p_dtrace_probes
+#define        p_model         p_dtrace->p_dtrace_model
+#define        DATAMODEL_NATIVE        0
+#ifdef __amd64__
+#define        DATAMODEL_LP64          0
+#define        DATAMODEL_ILP32         1
+#else
+#define        DATAMODEL_LP64          1
+#define        DATAMODEL_ILP32         0
+#endif
 
 /*
- * Definitions for fields in struct proc which are named differntly in FreeBSD.
+ * Definitions for fields in struct proc which are named differently in 
FreeBSD.
  */
 #define        p_cred          p_ucred
 #define        p_parent        p_pptr
 
 /*
- * Definitions for fields in struct thread which are named differntly in 
FreeBSD.
+ * Definitions for fields in struct thread which are named differently in 
FreeBSD.
  */
 #define        t_procp         td_proc
 #define        t_tid           td_tid
_______________________________________________
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to