From owner-p4-projects@FreeBSD.ORG Tue Apr 25 20:52:33 2006 Return-Path: X-Original-To: p4-projects@freebsd.org Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id E38F916A404; Tue, 25 Apr 2006 20:52:32 +0000 (UTC) X-Original-To: perforce@freebsd.org Delivered-To: perforce@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id BCFB416A402 for ; Tue, 25 Apr 2006 20:52:32 +0000 (UTC) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 6E56443D46 for ; Tue, 25 Apr 2006 20:52:32 +0000 (GMT) (envelope-from jb@freebsd.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id k3PKqW1Z069565 for ; Tue, 25 Apr 2006 20:52:32 GMT (envelope-from jb@freebsd.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id k3PKqWPe069557 for perforce@freebsd.org; Tue, 25 Apr 2006 20:52:32 GMT (envelope-from jb@freebsd.org) Date: Tue, 25 Apr 2006 20:52:32 GMT Message-Id: <200604252052.k3PKqWPe069557@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to jb@freebsd.org using -f From: John Birrell To: Perforce Change Reviews Cc: Subject: PERFORCE change 96105 for review X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 25 Apr 2006 20:52:33 -0000 http://perforce.freebsd.org/chv.cgi?CH=96105 Change 96105 by jb@jb_freebsd2 on 2006/04/25 20:51:33 SysV -> BSD style ioctl for DOFGET. Affected files ... .. //depot/projects/dtrace/src/contrib/opensolaris/lib/libdtrace/common/dt_options.c#3 edit .. //depot/projects/dtrace/src/sys/cddl/dev/dtrace/dtrace_ioctl.c#7 edit .. //depot/projects/dtrace/src/sys/contrib/opensolaris/uts/common/sys/dtrace.h#9 edit Differences ... ==== //depot/projects/dtrace/src/contrib/opensolaris/lib/libdtrace/common/dt_options.c#3 (text) ==== @@ -788,7 +788,12 @@ bzero(&hdr, sizeof (dof_hdr_t)); hdr.dofh_loadsz = sizeof (dof_hdr_t); +#if defined(sun) if (dt_ioctl(dtp, DTRACEIOC_DOFGET, &hdr) == -1) +#else + dof = &hdr; + if (dt_ioctl(dtp, DTRACEIOC_DOFGET, &dof) == -1) +#endif return (dt_set_errno(dtp, errno)); if (hdr.dofh_loadsz < sizeof (dof_hdr_t)) @@ -801,7 +806,11 @@ for (i = 0; i < DTRACEOPT_MAX; i++) dtp->dt_options[i] = DTRACEOPT_UNSET; +#if defined(sun) if (dt_ioctl(dtp, DTRACEIOC_DOFGET, dof) == -1) +#else + if (dt_ioctl(dtp, DTRACEIOC_DOFGET, &dof) == -1) +#endif return (dt_set_errno(dtp, errno)); for (i = 0; i < dof->dofh_secnum; i++) { ==== //depot/projects/dtrace/src/sys/cddl/dev/dtrace/dtrace_ioctl.c#7 (text+ko) ==== @@ -287,15 +287,13 @@ return (0); } - case DTRACEIOC_DOFGET: -printf("DTRACEIOC_DOFGET:\n"); -error = EINVAL; -#ifdef DOODAD - { - dof_hdr_t hdr, *dof; + case DTRACEIOC_DOFGET: { + dof_hdr_t **pdof = (dof_hdr_t **) addr; + dof_hdr_t hdr, *dof = *pdof; + int rval; uint64_t len; - if (copyin((void *)arg, &hdr, sizeof (hdr)) != 0) + if (copyin((void *)dof, &hdr, sizeof (hdr)) != 0) return (EFAULT); mutex_enter(&dtrace_lock); @@ -303,13 +301,11 @@ mutex_exit(&dtrace_lock); len = MIN(hdr.dofh_loadsz, dof->dofh_loadsz); - rval = copyout(dof, (void *)arg, len); + rval = copyout(dof, (void *) *pdof, len); dtrace_dof_destroy(dof); return (rval == 0 ? 0 : EFAULT); } -#endif - break; case DTRACEIOC_ENABLE: { dof_hdr_t *dof = NULL; dtrace_enabling_t *enab = NULL; ==== //depot/projects/dtrace/src/sys/contrib/opensolaris/uts/common/sys/dtrace.h#9 (text) ==== @@ -1221,7 +1221,8 @@ #define DTRACEIOC_STOP _IO('x',13) /* stop tracing */ #define DTRACEIOC_AGGDESC _IO('x',15) /* get agg. desc. */ #define DTRACEIOC_FORMAT _IO('x',16) /* get format str */ -#define DTRACEIOC_DOFGET _IO('x',17) /* get DOF */ +#define DTRACEIOC_DOFGET _IOW('x',17,dof_hdr_t *) + /* get DOF */ #define DTRACEIOC_REPLICATE _IO('x',18) /* replicate enab */ #endif