Date: Sat, 21 Aug 2010 11:58:08 +0000 (UTC) From: Rui Paulo <rpaulo@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r211555 - head/sys/cddl/contrib/opensolaris/uts/common/sys Message-ID: <201008211158.o7LBw8CY068349@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: rpaulo Date: Sat Aug 21 11:58:08 2010 New Revision: 211555 URL: http://svn.freebsd.org/changeset/base/211555 Log: Port the DTrace helper ioctls to FreeBSD and add a helper member to dof_helper_t (needed by drti.o). Sponsored by: The FreeBSD Foundation Modified: head/sys/cddl/contrib/opensolaris/uts/common/sys/dtrace.h Modified: head/sys/cddl/contrib/opensolaris/uts/common/sys/dtrace.h ============================================================================== --- head/sys/cddl/contrib/opensolaris/uts/common/sys/dtrace.h Sat Aug 21 11:50:53 2010 (r211554) +++ head/sys/cddl/contrib/opensolaris/uts/common/sys/dtrace.h Sat Aug 21 11:58:08 2010 (r211555) @@ -1322,15 +1322,24 @@ typedef struct { * helpers and should no longer be used. No other ioctls are valid on the * helper minor node. */ +#if defined(sun) #define DTRACEHIOC (('d' << 24) | ('t' << 16) | ('h' << 8)) #define DTRACEHIOC_ADD (DTRACEHIOC | 1) /* add helper */ #define DTRACEHIOC_REMOVE (DTRACEHIOC | 2) /* remove helper */ #define DTRACEHIOC_ADDDOF (DTRACEHIOC | 3) /* add helper DOF */ +#else +#define DTRACEHIOC_ADD _IOWR('z', 1, dof_hdr_t)/* add helper */ +#define DTRACEHIOC_REMOVE _IOW('z', 2, int) /* remove helper */ +#define DTRACEHIOC_ADDDOF _IOWR('z', 3, dof_helper_t)/* add helper DOF */ +#endif typedef struct dof_helper { char dofhp_mod[DTRACE_MODNAMELEN]; /* executable or library name */ uint64_t dofhp_addr; /* base address of object */ uint64_t dofhp_dof; /* address of helper DOF */ +#if !defined(sun) + int gen; +#endif } dof_helper_t; #define DTRACEMNR_DTRACE "dtrace" /* node for DTrace ops */ @@ -2219,10 +2228,11 @@ extern void dtrace_vtime_enable(void); extern void dtrace_vtime_disable(void); struct regs; +struct reg; #if defined(sun) -extern int (*dtrace_pid_probe_ptr)(struct regs *); -extern int (*dtrace_return_probe_ptr)(struct regs *); +extern int (*dtrace_pid_probe_ptr)(struct reg *); +extern int (*dtrace_return_probe_ptr)(struct reg *); extern void (*dtrace_fasttrap_fork_ptr)(proc_t *, proc_t *); extern void (*dtrace_fasttrap_exec_ptr)(proc_t *); extern void (*dtrace_fasttrap_exit_ptr)(proc_t *);
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201008211158.o7LBw8CY068349>