From owner-p4-projects@FreeBSD.ORG Tue Nov 11 19:36:54 2008 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id BC4B11065678; Tue, 11 Nov 2008 19:36:53 +0000 (UTC) Delivered-To: perforce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 7EA3D1065676 for ; Tue, 11 Nov 2008 19:36:53 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id 81A778FC1C for ; Tue, 11 Nov 2008 19:36:53 +0000 (UTC) (envelope-from hselasky@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.3/8.14.3) with ESMTP id mABJarBq053397 for ; Tue, 11 Nov 2008 19:36:53 GMT (envelope-from hselasky@FreeBSD.org) Received: (from perforce@localhost) by repoman.freebsd.org (8.14.3/8.14.3/Submit) id mABJaqTA053395 for perforce@freebsd.org; Tue, 11 Nov 2008 19:36:52 GMT (envelope-from hselasky@FreeBSD.org) Date: Tue, 11 Nov 2008 19:36:52 GMT Message-Id: <200811111936.mABJaqTA053395@repoman.freebsd.org> X-Authentication-Warning: repoman.freebsd.org: perforce set sender to hselasky@FreeBSD.org using -f From: Hans Petter Selasky To: Perforce Change Reviews Cc: Subject: PERFORCE change 152815 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, 11 Nov 2008 19:36:55 -0000 http://perforce.freebsd.org/chv.cgi?CH=152815 Change 152815 by hselasky@hselasky_laptop001 on 2008/11/11 19:36:05 IFC @ 152813 Affected files ... .. //depot/projects/usb/src/sys/amd64/include/pmc_mdep.h#5 integrate .. //depot/projects/usb/src/sys/amd64/linux32/linux32_machdep.c#10 integrate .. //depot/projects/usb/src/sys/amd64/linux32/linux32_proto.h#8 integrate .. //depot/projects/usb/src/sys/amd64/linux32/linux32_syscall.h#8 integrate .. //depot/projects/usb/src/sys/amd64/linux32/linux32_sysent.c#8 integrate .. //depot/projects/usb/src/sys/amd64/linux32/syscalls.master#8 integrate .. //depot/projects/usb/src/sys/arm/arm/dump_machdep.c#5 integrate .. //depot/projects/usb/src/sys/arm/arm/minidump_machdep.c#1 branch .. //depot/projects/usb/src/sys/arm/arm/pmap.c#12 integrate .. //depot/projects/usb/src/sys/arm/include/md_var.h#3 integrate .. //depot/projects/usb/src/sys/arm/include/minidump.h#1 branch .. //depot/projects/usb/src/sys/arm/include/pmap.h#8 integrate .. //depot/projects/usb/src/sys/arm/mv/mv_machdep.c#2 integrate .. //depot/projects/usb/src/sys/cddl/compat/opensolaris/kern/opensolaris_kmem.c#3 integrate .. //depot/projects/usb/src/sys/cddl/compat/opensolaris/sys/types.h#2 integrate .. //depot/projects/usb/src/sys/cddl/compat/opensolaris/sys/uio.h#2 integrate .. //depot/projects/usb/src/sys/cddl/contrib/opensolaris/uts/common/dtrace/dtrace.c#5 integrate .. //depot/projects/usb/src/sys/cddl/contrib/opensolaris/uts/common/dtrace/fasttrap.c#2 integrate .. //depot/projects/usb/src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_acl.c#2 integrate .. //depot/projects/usb/src/sys/cddl/dev/dtrace/dtrace_ioctl.c#2 integrate .. //depot/projects/usb/src/sys/cddl/dev/dtrace/dtrace_load.c#2 integrate .. //depot/projects/usb/src/sys/cddl/dev/dtrace/dtrace_unload.c#2 integrate .. //depot/projects/usb/src/sys/cddl/dev/systrace/systrace.c#2 integrate .. //depot/projects/usb/src/sys/compat/freebsd32/freebsd32_misc.c#11 integrate .. //depot/projects/usb/src/sys/compat/freebsd32/freebsd32_proto.h#11 integrate .. //depot/projects/usb/src/sys/compat/freebsd32/freebsd32_syscall.h#11 integrate .. //depot/projects/usb/src/sys/compat/freebsd32/freebsd32_syscalls.c#11 integrate .. //depot/projects/usb/src/sys/compat/freebsd32/freebsd32_sysent.c#11 integrate .. //depot/projects/usb/src/sys/compat/freebsd32/syscalls.master#11 integrate .. //depot/projects/usb/src/sys/compat/linprocfs/linprocfs.c#11 integrate .. //depot/projects/usb/src/sys/compat/linux/linux_misc.c#15 integrate .. //depot/projects/usb/src/sys/conf/NOTES#21 integrate .. //depot/projects/usb/src/sys/conf/files.amd64#11 integrate .. //depot/projects/usb/src/sys/conf/files.arm#8 integrate .. //depot/projects/usb/src/sys/conf/files.i386#14 integrate .. //depot/projects/usb/src/sys/conf/files.pc98#12 integrate .. //depot/projects/usb/src/sys/dev/age/if_age.c#6 integrate .. //depot/projects/usb/src/sys/dev/an/if_an.c#6 integrate .. //depot/projects/usb/src/sys/dev/cxgb/cxgb_main.c#10 integrate .. //depot/projects/usb/src/sys/dev/cxgb/cxgb_osdep.h#8 integrate .. //depot/projects/usb/src/sys/dev/e1000/if_em.c#2 integrate .. //depot/projects/usb/src/sys/dev/e1000/if_igb.c#3 integrate .. //depot/projects/usb/src/sys/dev/en/midway.c#6 integrate .. //depot/projects/usb/src/sys/dev/hwpmc/hwpmc_amd.c#5 integrate .. //depot/projects/usb/src/sys/dev/hwpmc/hwpmc_amd.h#2 integrate .. //depot/projects/usb/src/sys/dev/hwpmc/hwpmc_intel.c#1 branch .. //depot/projects/usb/src/sys/dev/hwpmc/hwpmc_logging.c#6 integrate .. //depot/projects/usb/src/sys/dev/hwpmc/hwpmc_mod.c#9 integrate .. //depot/projects/usb/src/sys/dev/hwpmc/hwpmc_pentium.c#2 integrate .. //depot/projects/usb/src/sys/dev/hwpmc/hwpmc_pentium.h#2 integrate .. //depot/projects/usb/src/sys/dev/hwpmc/hwpmc_piv.c#6 integrate .. //depot/projects/usb/src/sys/dev/hwpmc/hwpmc_piv.h#2 integrate .. //depot/projects/usb/src/sys/dev/hwpmc/hwpmc_ppro.c#5 integrate .. //depot/projects/usb/src/sys/dev/hwpmc/hwpmc_ppro.h#2 integrate .. //depot/projects/usb/src/sys/dev/hwpmc/hwpmc_tsc.c#1 branch .. //depot/projects/usb/src/sys/dev/hwpmc/hwpmc_tsc.h#1 branch .. //depot/projects/usb/src/sys/dev/hwpmc/hwpmc_x86.c#6 integrate .. //depot/projects/usb/src/sys/dev/if_ndis/if_ndis.c#11 integrate .. //depot/projects/usb/src/sys/dev/ispfw/ispfw.c#4 integrate .. //depot/projects/usb/src/sys/dev/snp/snp.c#8 integrate .. //depot/projects/usb/src/sys/dev/syscons/sysmouse.c#5 integrate .. //depot/projects/usb/src/sys/dev/usb2/controller/at91dci.c#15 integrate .. //depot/projects/usb/src/sys/dev/usb2/controller/at91dci_atmelarm.c#11 integrate .. //depot/projects/usb/src/sys/dev/usb2/controller/ehci2.c#18 integrate .. //depot/projects/usb/src/sys/dev/usb2/controller/ehci2_pci.c#14 integrate .. //depot/projects/usb/src/sys/dev/usb2/controller/musb2_otg.c#16 integrate .. //depot/projects/usb/src/sys/dev/usb2/controller/musb2_otg_atmelarm.c#8 integrate .. //depot/projects/usb/src/sys/dev/usb2/controller/ohci2.c#16 integrate .. //depot/projects/usb/src/sys/dev/usb2/controller/ohci2_atmelarm.c#11 integrate .. //depot/projects/usb/src/sys/dev/usb2/controller/ohci2_pci.c#12 integrate .. //depot/projects/usb/src/sys/dev/usb2/controller/uhci2.c#14 integrate .. //depot/projects/usb/src/sys/dev/usb2/controller/uhci2_pci.c#13 integrate .. //depot/projects/usb/src/sys/dev/usb2/controller/usb2_bus.h#5 integrate .. //depot/projects/usb/src/sys/dev/usb2/controller/usb2_controller.c#15 integrate .. //depot/projects/usb/src/sys/dev/usb2/controller/uss820dci.c#13 integrate .. //depot/projects/usb/src/sys/dev/usb2/controller/uss820dci_atmelarm.c#4 integrate .. //depot/projects/usb/src/sys/dev/usb2/controller/uss820dci_pccard.c#11 integrate .. //depot/projects/usb/src/sys/dev/usb2/core/usb2_busdma.c#12 integrate .. //depot/projects/usb/src/sys/dev/usb2/core/usb2_core.h#23 integrate .. //depot/projects/usb/src/sys/dev/usb2/core/usb2_device.c#30 integrate .. //depot/projects/usb/src/sys/dev/usb2/core/usb2_handle_request.c#10 integrate .. //depot/projects/usb/src/sys/dev/usb2/core/usb2_hub.c#20 integrate .. //depot/projects/usb/src/sys/dev/usb2/core/usb2_request.c#21 integrate .. //depot/projects/usb/src/sys/dev/usb2/core/usb2_sw_transfer.c#7 integrate .. //depot/projects/usb/src/sys/dev/usb2/core/usb2_transfer.c#31 integrate .. //depot/projects/usb/src/sys/dev/usb2/core/usb2_transfer.h#9 integrate .. //depot/projects/usb/src/sys/dev/usb2/include/usb2_devid.h#11 integrate .. //depot/projects/usb/src/sys/dev/usb2/include/usb2_devtable.h#11 integrate .. //depot/projects/usb/src/sys/dev/usb2/serial/uark2.c#10 integrate .. //depot/projects/usb/src/sys/dev/usb2/serial/ubsa2.c#14 integrate .. //depot/projects/usb/src/sys/dev/usb2/serial/ubser2.c#10 integrate .. //depot/projects/usb/src/sys/dev/usb2/serial/uchcom2.c#11 integrate .. //depot/projects/usb/src/sys/dev/usb2/serial/ucycom2.c#11 integrate .. //depot/projects/usb/src/sys/dev/usb2/serial/ufoma2.c#13 integrate .. //depot/projects/usb/src/sys/dev/usb2/serial/uftdi2.c#11 integrate .. //depot/projects/usb/src/sys/dev/usb2/serial/ugensa2.c#14 integrate .. //depot/projects/usb/src/sys/dev/usb2/serial/uipaq2.c#12 integrate .. //depot/projects/usb/src/sys/dev/usb2/serial/umct2.c#10 integrate .. //depot/projects/usb/src/sys/dev/usb2/serial/umodem2.c#13 integrate .. //depot/projects/usb/src/sys/dev/usb2/serial/umoscom2.c#11 integrate .. //depot/projects/usb/src/sys/dev/usb2/serial/uplcom2.c#12 integrate .. //depot/projects/usb/src/sys/dev/usb2/serial/usb2_serial.c#17 integrate .. //depot/projects/usb/src/sys/dev/usb2/serial/uvisor2.c#11 integrate .. //depot/projects/usb/src/sys/dev/usb2/serial/uvscom2.c#11 integrate .. //depot/projects/usb/src/sys/dev/usb2/storage/ata-usb2.c#10 integrate .. //depot/projects/usb/src/sys/dev/usb2/wlan/if_zyd2.c#21 integrate .. //depot/projects/usb/src/sys/fs/procfs/procfs.c#5 integrate .. //depot/projects/usb/src/sys/fs/procfs/procfs_map.c#5 integrate .. //depot/projects/usb/src/sys/fs/unionfs/union_vfsops.c#8 integrate .. //depot/projects/usb/src/sys/geom/part/g_part_gpt.c#9 integrate .. //depot/projects/usb/src/sys/i386/include/pmc_mdep.h#5 integrate .. //depot/projects/usb/src/sys/i386/linux/linux_machdep.c#9 integrate .. //depot/projects/usb/src/sys/i386/linux/linux_proto.h#8 integrate .. //depot/projects/usb/src/sys/i386/linux/linux_syscall.h#8 integrate .. //depot/projects/usb/src/sys/i386/linux/linux_sysent.c#8 integrate .. //depot/projects/usb/src/sys/i386/linux/syscalls.master#8 integrate .. //depot/projects/usb/src/sys/kern/init_sysent.c#10 integrate .. //depot/projects/usb/src/sys/kern/kern_descrip.c#14 integrate .. //depot/projects/usb/src/sys/kern/kern_exec.c#12 integrate .. //depot/projects/usb/src/sys/kern/kern_mbuf.c#8 integrate .. //depot/projects/usb/src/sys/kern/kern_proc.c#12 integrate .. //depot/projects/usb/src/sys/kern/kern_sig.c#11 integrate .. //depot/projects/usb/src/sys/kern/kern_thr.c#9 integrate .. //depot/projects/usb/src/sys/kern/kern_thread.c#12 integrate .. //depot/projects/usb/src/sys/kern/kern_xxx.c#8 integrate .. //depot/projects/usb/src/sys/kern/subr_firmware.c#7 integrate .. //depot/projects/usb/src/sys/kern/subr_sleepqueue.c#11 integrate .. //depot/projects/usb/src/sys/kern/sys_pipe.c#9 integrate .. //depot/projects/usb/src/sys/kern/sys_process.c#9 integrate .. //depot/projects/usb/src/sys/kern/syscalls.c#10 integrate .. //depot/projects/usb/src/sys/kern/syscalls.master#10 integrate .. //depot/projects/usb/src/sys/kern/systrace_args.c#9 integrate .. //depot/projects/usb/src/sys/kern/tty.c#12 integrate .. //depot/projects/usb/src/sys/kern/vfs_syscalls.c#12 integrate .. //depot/projects/usb/src/sys/modules/Makefile#22 integrate .. //depot/projects/usb/src/sys/modules/hwpmc/Makefile#4 integrate .. //depot/projects/usb/src/sys/modules/krpc/Makefile#2 integrate .. //depot/projects/usb/src/sys/modules/nfsserver/Makefile#3 integrate .. //depot/projects/usb/src/sys/modules/snp/Makefile#2 integrate .. //depot/projects/usb/src/sys/modules/usb2/Makefile#4 integrate .. //depot/projects/usb/src/sys/modules/usb2/bluetooth/Makefile#5 integrate .. //depot/projects/usb/src/sys/modules/usb2/bluetooth_fw/Makefile#2 integrate .. //depot/projects/usb/src/sys/modules/usb2/bluetooth_ng/Makefile#2 integrate .. //depot/projects/usb/src/sys/modules/usb2/controller/Makefile#8 integrate .. //depot/projects/usb/src/sys/modules/usb2/controller_at91dci/Makefile#2 integrate .. //depot/projects/usb/src/sys/modules/usb2/controller_ehci/Makefile#2 integrate .. //depot/projects/usb/src/sys/modules/usb2/controller_musb/Makefile#2 integrate .. //depot/projects/usb/src/sys/modules/usb2/controller_ohci/Makefile#2 integrate .. //depot/projects/usb/src/sys/modules/usb2/controller_uhci/Makefile#2 integrate .. //depot/projects/usb/src/sys/modules/usb2/controller_uss820dci/Makefile#2 integrate .. //depot/projects/usb/src/sys/modules/usb2/core/Makefile#8 integrate .. //depot/projects/usb/src/sys/modules/usb2/ethernet/Makefile#6 integrate .. //depot/projects/usb/src/sys/modules/usb2/ethernet_aue/Makefile#2 integrate .. //depot/projects/usb/src/sys/modules/usb2/ethernet_axe/Makefile#2 integrate .. //depot/projects/usb/src/sys/modules/usb2/ethernet_cdce/Makefile#2 integrate .. //depot/projects/usb/src/sys/modules/usb2/ethernet_cue/Makefile#2 integrate .. //depot/projects/usb/src/sys/modules/usb2/ethernet_dav/Makefile#2 integrate .. //depot/projects/usb/src/sys/modules/usb2/ethernet_kue/Makefile#2 integrate .. //depot/projects/usb/src/sys/modules/usb2/ethernet_rue/Makefile#2 integrate .. //depot/projects/usb/src/sys/modules/usb2/image/Makefile#5 integrate .. //depot/projects/usb/src/sys/modules/usb2/input/Makefile#6 integrate .. //depot/projects/usb/src/sys/modules/usb2/input_hid/Makefile#2 integrate .. //depot/projects/usb/src/sys/modules/usb2/input_kbd/Makefile#2 integrate .. //depot/projects/usb/src/sys/modules/usb2/input_ms/Makefile#2 integrate .. //depot/projects/usb/src/sys/modules/usb2/misc/Makefile#5 integrate .. //depot/projects/usb/src/sys/modules/usb2/misc_dbp/Makefile#2 integrate .. //depot/projects/usb/src/sys/modules/usb2/misc_fm/Makefile#2 integrate .. //depot/projects/usb/src/sys/modules/usb2/ndis/Makefile#5 integrate .. //depot/projects/usb/src/sys/modules/usb2/quirk/Makefile#5 integrate .. //depot/projects/usb/src/sys/modules/usb2/scanner/Makefile#2 integrate .. //depot/projects/usb/src/sys/modules/usb2/serial/Makefile#5 integrate .. //depot/projects/usb/src/sys/modules/usb2/serial_ark/Makefile#2 integrate .. //depot/projects/usb/src/sys/modules/usb2/serial_bsa/Makefile#2 integrate .. //depot/projects/usb/src/sys/modules/usb2/serial_bser/Makefile#2 integrate .. //depot/projects/usb/src/sys/modules/usb2/serial_chcom/Makefile#2 integrate .. //depot/projects/usb/src/sys/modules/usb2/serial_cycom/Makefile#2 integrate .. //depot/projects/usb/src/sys/modules/usb2/serial_foma/Makefile#2 integrate .. //depot/projects/usb/src/sys/modules/usb2/serial_ftdi/Makefile#2 integrate .. //depot/projects/usb/src/sys/modules/usb2/serial_gensa/Makefile#2 integrate .. //depot/projects/usb/src/sys/modules/usb2/serial_ipaq/Makefile#2 integrate .. //depot/projects/usb/src/sys/modules/usb2/serial_lpt/Makefile#2 integrate .. //depot/projects/usb/src/sys/modules/usb2/serial_mct/Makefile#2 integrate .. //depot/projects/usb/src/sys/modules/usb2/serial_modem/Makefile#2 integrate .. //depot/projects/usb/src/sys/modules/usb2/serial_moscom/Makefile#2 integrate .. //depot/projects/usb/src/sys/modules/usb2/serial_plcom/Makefile#2 integrate .. //depot/projects/usb/src/sys/modules/usb2/serial_visor/Makefile#2 integrate .. //depot/projects/usb/src/sys/modules/usb2/serial_vscom/Makefile#2 integrate .. //depot/projects/usb/src/sys/modules/usb2/sound/Makefile#5 integrate .. //depot/projects/usb/src/sys/modules/usb2/storage/Makefile#5 integrate .. //depot/projects/usb/src/sys/modules/usb2/storage_ata/Makefile#2 integrate .. //depot/projects/usb/src/sys/modules/usb2/storage_fs/Makefile#2 integrate .. //depot/projects/usb/src/sys/modules/usb2/storage_mass/Makefile#2 integrate .. //depot/projects/usb/src/sys/modules/usb2/storage_rio/Makefile#2 integrate .. //depot/projects/usb/src/sys/modules/usb2/template/Makefile#5 integrate .. //depot/projects/usb/src/sys/modules/usb2/wlan/Makefile#6 integrate .. //depot/projects/usb/src/sys/modules/usb2/wlan_ral/Makefile#2 integrate .. //depot/projects/usb/src/sys/modules/usb2/wlan_rum/Makefile#2 integrate .. //depot/projects/usb/src/sys/modules/usb2/wlan_zyd/Makefile#2 integrate .. //depot/projects/usb/src/sys/modules/zfs/Makefile#5 integrate .. //depot/projects/usb/src/sys/net/if.c#12 integrate .. //depot/projects/usb/src/sys/net/if_arcsubr.c#3 integrate .. //depot/projects/usb/src/sys/net/if_fddisubr.c#6 integrate .. //depot/projects/usb/src/sys/net/if_fwsubr.c#9 integrate .. //depot/projects/usb/src/sys/net/if_gif.c#9 integrate .. //depot/projects/usb/src/sys/net/if_iso88025subr.c#8 integrate .. //depot/projects/usb/src/sys/net/if_spppsubr.c#7 integrate .. //depot/projects/usb/src/sys/net/if_tun.c#8 integrate .. //depot/projects/usb/src/sys/net/radix_mpath.c#3 integrate .. //depot/projects/usb/src/sys/netgraph/ng_tty.c#4 integrate .. //depot/projects/usb/src/sys/netgraph/ng_tty.h#3 integrate .. //depot/projects/usb/src/sys/netinet/ip_fw2.c#14 integrate .. //depot/projects/usb/src/sys/netinet/tcp_input.c#15 integrate .. //depot/projects/usb/src/sys/netinet/tcp_subr.c#13 integrate .. //depot/projects/usb/src/sys/netinet/tcp_var.h#11 integrate .. //depot/projects/usb/src/sys/nfsserver/nfs_fha.c#2 integrate .. //depot/projects/usb/src/sys/nfsserver/nfs_srvkrpc.c#2 integrate .. //depot/projects/usb/src/sys/nfsserver/nfs_srvsubs.c#10 integrate .. //depot/projects/usb/src/sys/security/audit/audit_arg.c#10 integrate .. //depot/projects/usb/src/sys/security/audit/audit_bsm_klib.c#11 integrate .. //depot/projects/usb/src/sys/security/audit/audit_worker.c#11 integrate .. //depot/projects/usb/src/sys/sys/cfictl.h#2 integrate .. //depot/projects/usb/src/sys/sys/pmc.h#4 integrate .. //depot/projects/usb/src/sys/sys/priv.h#9 integrate .. //depot/projects/usb/src/sys/sys/proc.h#13 integrate .. //depot/projects/usb/src/sys/sys/syscall.h#10 integrate .. //depot/projects/usb/src/sys/sys/syscall.mk#10 integrate .. //depot/projects/usb/src/sys/sys/syscallsubr.h#7 integrate .. //depot/projects/usb/src/sys/sys/sysent.h#9 integrate .. //depot/projects/usb/src/sys/sys/sysproto.h#10 integrate .. //depot/projects/usb/src/sys/sys/ttydefaults.h#4 integrate .. //depot/projects/usb/src/sys/ufs/ufs/ufs_dirhash.c#5 integrate .. //depot/projects/usb/src/sys/vm/vm_page.c#12 integrate .. //depot/projects/usb/src/sys/xdr/xdr_mbuf.c#3 integrate Differences ... ==== //depot/projects/usb/src/sys/amd64/include/pmc_mdep.h#5 (text+ko) ==== @@ -27,7 +27,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/amd64/include/pmc_mdep.h,v 1.6 2008/09/15 06:47:52 jkoshy Exp $ + * $FreeBSD: src/sys/amd64/include/pmc_mdep.h,v 1.7 2008/11/09 17:37:54 jkoshy Exp $ */ /* Machine dependent interfaces */ @@ -35,9 +35,35 @@ #ifndef _MACHINE_PMC_MDEP_H #define _MACHINE_PMC_MDEP_H 1 +#ifdef _KERNEL +struct pmc_mdep; +#endif + #include #include +#include +/* + * Intel processors implementing V2 and later of the Intel performance + * measurement architecture have PMCs of the following classes: TSC, + * IAF and IAP. + */ +#define PMC_MDEP_CLASS_INDEX_TSC 0 +#define PMC_MDEP_CLASS_INDEX_K8 1 +#define PMC_MDEP_CLASS_INDEX_P4 1 +#define PMC_MDEP_CLASS_INDEX_IAF 1 +#define PMC_MDEP_CLASS_INDEX_IAP 2 + +/* + * On the amd64 platform we support the following PMCs. + * + * TSC The timestamp counter + * K8 AMD Athlon64 and Opteron PMCs in 64 bit mode. + * PIV Intel P4/HTT and P4/EMT64 + * IAP Intel Core/Core2/Atom CPUs in 64 bits mode. + * IAF Intel fixed-function PMCs in Core2 and later CPUs. + */ + union pmc_md_op_pmcallocate { struct pmc_md_amd_op_pmcallocate pm_amd; struct pmc_md_p4_op_pmcallocate pm_p4; @@ -55,8 +81,6 @@ struct pmc_md_p4_pmc pm_p4; }; -struct pmc; - #define PMC_TRAPFRAME_TO_PC(TF) ((TF)->tf_rip) #define PMC_TRAPFRAME_TO_FP(TF) ((TF)->tf_rbp) #define PMC_TRAPFRAME_TO_USER_SP(TF) ((TF)->tf_rsp) @@ -88,5 +112,10 @@ void start_exceptions(void), end_exceptions(void); void pmc_x86_lapic_enable_pmc_interrupt(void); -#endif +struct pmc_mdep *pmc_amd_initialize(void); +void pmc_amd_finalize(struct pmc_mdep *_md); +struct pmc_mdep *pmc_intel_initialize(void); +void pmc_intel_finalize(struct pmc_mdep *_md); + +#endif /* _KERNEL */ #endif /* _MACHINE_PMC_MDEP_H */ ==== //depot/projects/usb/src/sys/amd64/linux32/linux32_machdep.c#10 (text+ko) ==== @@ -29,7 +29,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/linux32/linux32_machdep.c,v 1.49 2008/09/08 09:59:05 kib Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/linux32/linux32_machdep.c,v 1.50 2008/11/11 14:55:59 ed Exp $"); #include #include @@ -977,33 +977,20 @@ int linux_pipe(struct thread *td, struct linux_pipe_args *args) { - int pip[2]; int error; - register_t reg_rdx; + int fildes[2]; #ifdef DEBUG if (ldebug(pipe)) printf(ARGS(pipe, "*")); #endif - reg_rdx = td->td_retval[1]; - error = pipe(td, 0); - if (error) { - td->td_retval[1] = reg_rdx; + error = kern_pipe(td, fildes); + if (error) return (error); - } - pip[0] = td->td_retval[0]; - pip[1] = td->td_retval[1]; - error = copyout(pip, args->pipefds, 2 * sizeof(int)); - if (error) { - td->td_retval[1] = reg_rdx; - return (error); - } - - td->td_retval[1] = reg_rdx; - td->td_retval[0] = 0; - return (0); + /* XXX: Close descriptors on error. */ + return (copyout(fildes, args->pipefds, sizeof fildes)); } int ==== //depot/projects/usb/src/sys/amd64/linux32/linux32_proto.h#8 (text+ko) ==== @@ -2,8 +2,8 @@ * System call prototypes. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/amd64/linux32/linux32_proto.h,v 1.37 2008/05/13 20:02:25 rdivacky Exp $ - * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.34 2008/05/13 20:01:26 rdivacky Exp + * $FreeBSD: src/sys/amd64/linux32/linux32_proto.h,v 1.38 2008/11/09 10:48:06 ed Exp $ + * created from FreeBSD: head/sys/amd64/linux32/syscalls.master 184789 2008-11-09 10:45:13Z ed */ #ifndef _LINUX_SYSPROTO_H_ @@ -378,6 +378,10 @@ char dummy_l_[PADL_(int)]; int dummy; char dummy_r_[PADR_(int)]; char child_tidptr_l_[PADL_(void *)]; void * child_tidptr; char child_tidptr_r_[PADR_(void *)]; }; +struct linux_setdomainname_args { + char name_l_[PADL_(char *)]; char * name; char name_r_[PADR_(char *)]; + char len_l_[PADL_(int)]; int len; char len_r_[PADR_(int)]; +}; struct linux_newuname_args { char buf_l_[PADL_(struct l_new_utsname *)]; struct l_new_utsname * buf; char buf_r_[PADR_(struct l_new_utsname *)]; }; @@ -1077,6 +1081,7 @@ int linux_ipc(struct thread *, struct linux_ipc_args *); int linux_sigreturn(struct thread *, struct linux_sigreturn_args *); int linux_clone(struct thread *, struct linux_clone_args *); +int linux_setdomainname(struct thread *, struct linux_setdomainname_args *); int linux_newuname(struct thread *, struct linux_newuname_args *); int linux_adjtimex(struct thread *, struct linux_adjtimex_args *); int linux_mprotect(struct thread *, struct linux_mprotect_args *); @@ -1339,6 +1344,7 @@ #define LINUX_SYS_AUE_linux_ipc AUE_NULL #define LINUX_SYS_AUE_linux_sigreturn AUE_SIGRETURN #define LINUX_SYS_AUE_linux_clone AUE_RFORK +#define LINUX_SYS_AUE_linux_setdomainname AUE_SYSCTL #define LINUX_SYS_AUE_linux_newuname AUE_NULL #define LINUX_SYS_AUE_linux_adjtimex AUE_ADJTIME #define LINUX_SYS_AUE_linux_mprotect AUE_MPROTECT ==== //depot/projects/usb/src/sys/amd64/linux32/linux32_syscall.h#8 (text+ko) ==== @@ -2,8 +2,8 @@ * System call numbers. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/amd64/linux32/linux32_syscall.h,v 1.37 2008/05/13 20:02:25 rdivacky Exp $ - * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.34 2008/05/13 20:01:26 rdivacky Exp + * $FreeBSD: src/sys/amd64/linux32/linux32_syscall.h,v 1.38 2008/11/09 10:48:06 ed Exp $ + * created from FreeBSD: head/sys/amd64/linux32/syscalls.master 184789 2008-11-09 10:45:13Z ed */ #define LINUX_SYS_exit 1 @@ -112,7 +112,7 @@ #define LINUX_SYS_fsync 118 #define LINUX_SYS_linux_sigreturn 119 #define LINUX_SYS_linux_clone 120 -#define LINUX_SYS_setdomainname 121 +#define LINUX_SYS_linux_setdomainname 121 #define LINUX_SYS_linux_newuname 122 #define LINUX_SYS_linux_adjtimex 124 #define LINUX_SYS_linux_mprotect 125 ==== //depot/projects/usb/src/sys/amd64/linux32/linux32_sysent.c#8 (text+ko) ==== @@ -2,8 +2,8 @@ * System call switch table. * * DO NOT EDIT-- this file is automatically generated. - * $FreeBSD: src/sys/amd64/linux32/linux32_sysent.c,v 1.37 2008/05/13 20:02:25 rdivacky Exp $ - * created from FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.34 2008/05/13 20:01:26 rdivacky Exp + * $FreeBSD: src/sys/amd64/linux32/linux32_sysent.c,v 1.38 2008/11/09 10:48:06 ed Exp $ + * created from FreeBSD: head/sys/amd64/linux32/syscalls.master 184789 2008-11-09 10:45:13Z ed */ #include "opt_compat.h" @@ -140,7 +140,7 @@ { AS(fsync_args), (sy_call_t *)fsync, AUE_FSYNC, NULL, 0, 0 }, /* 118 = fsync */ { AS(linux_sigreturn_args), (sy_call_t *)linux_sigreturn, AUE_SIGRETURN, NULL, 0, 0 }, /* 119 = linux_sigreturn */ { AS(linux_clone_args), (sy_call_t *)linux_clone, AUE_RFORK, NULL, 0, 0 }, /* 120 = linux_clone */ - { AS(setdomainname_args), (sy_call_t *)setdomainname, AUE_SYSCTL, NULL, 0, 0 }, /* 121 = setdomainname */ + { AS(linux_setdomainname_args), (sy_call_t *)linux_setdomainname, AUE_SYSCTL, NULL, 0, 0 }, /* 121 = linux_setdomainname */ { AS(linux_newuname_args), (sy_call_t *)linux_newuname, AUE_NULL, NULL, 0, 0 }, /* 122 = linux_newuname */ { 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0 }, /* 123 = modify_ldt */ { 0, (sy_call_t *)linux_adjtimex, AUE_ADJTIME, NULL, 0, 0 }, /* 124 = linux_adjtimex */ ==== //depot/projects/usb/src/sys/amd64/linux32/syscalls.master#8 (text+ko) ==== @@ -1,4 +1,4 @@ - $FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.34 2008/05/13 20:01:26 rdivacky Exp $ + $FreeBSD: src/sys/amd64/linux32/syscalls.master,v 1.35 2008/11/09 10:45:13 ed Exp $ ; @(#)syscalls.master 8.1 (Berkeley) 7/19/93 ; System call name/number master file (or rather, slave, from LINUX). @@ -216,7 +216,7 @@ ; linux uses some strange calling convention here so we have to use the dummy arg 120 AUE_RFORK STD { int linux_clone(l_int flags, void *stack, \ void *parent_tidptr, int dummy, void * child_tidptr); } -121 AUE_SYSCTL NOPROTO { int setdomainname(char *name, \ +121 AUE_SYSCTL STD { int linux_setdomainname(char *name, \ int len); } 122 AUE_NULL STD { int linux_newuname( \ struct l_new_utsname *buf); } ==== //depot/projects/usb/src/sys/arm/arm/dump_machdep.c#5 (text+ko) ==== @@ -25,12 +25,13 @@ */ #include -__FBSDID("$FreeBSD: src/sys/arm/arm/dump_machdep.c,v 1.5 2008/10/01 22:08:53 peter Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/arm/dump_machdep.c,v 1.6 2008/11/06 16:20:27 raj Exp $"); #include #include #include #include +#include #include #include #include @@ -44,6 +45,11 @@ CTASSERT(sizeof(struct kerneldumpheader) == 512); +int do_minidump = 1; +TUNABLE_INT("debug.minidump", &do_minidump); +SYSCTL_INT(_debug, OID_AUTO, minidump, CTLFLAG_RW, &do_minidump, 0, + "Enable mini crash dumps"); + /* * Don't touch the first SIZEOF_METADATA bytes on the dump device. This * is to protect us from metadata and to protect metadata from us. @@ -155,11 +161,10 @@ vm_offset_t va; uint32_t pgs; size_t counter, sz, chunk; - int c, error, twiddle; + int c, error; error = 0; /* catch case in which chunk size is 0 */ - counter = 0; /* Update twiddle every 16MB */ - twiddle = 0; + counter = 0; va = 0; pgs = mdp->md_size / PAGE_SIZE; pa = mdp->md_start; @@ -264,7 +269,12 @@ off_t hdrgap; size_t hdrsz; int error; - + + if (do_minidump) { + minidumpsys(di); + return; + } + bzero(&ehdr, sizeof(ehdr)); ehdr.e_ident[EI_MAG0] = ELFMAG0; ehdr.e_ident[EI_MAG1] = ELFMAG1; ==== //depot/projects/usb/src/sys/arm/arm/pmap.c#12 (text+ko) ==== @@ -147,7 +147,7 @@ #include "opt_vm.h" #include -__FBSDID("$FreeBSD: src/sys/arm/arm/pmap.c,v 1.104 2008/10/13 18:59:59 raj Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/arm/pmap.c,v 1.106 2008/11/06 16:28:28 raj Exp $"); #include #include #include @@ -270,6 +270,11 @@ struct msgbuf *msgbufp = 0; +/* + * Crashdump maps. + */ +static caddr_t crashdumpmap; + extern void bcopy_page(vm_offset_t, vm_offset_t); extern void bzero_page(vm_offset_t); @@ -1209,7 +1214,7 @@ CTR4(KTR_PMAP, "pmap_l2cache_wbinv_range: pmap %p is_kernel %d " "va 0x%08x len 0x%x ", pm, pm == pmap_kernel(), va, rest); if (pmap_get_pde_pte(pm, va, &pde, &ptep) && l2pte_valid(*ptep)) - cpu_l2cache_wb_range(va, rest); + cpu_l2cache_wb_range(va, rest); len -= rest; va += rest; @@ -1241,7 +1246,7 @@ CTR4(KTR_PMAP, "pmap_l2cache_wb_range: pmap %p is_kernel %d " "va 0x%08x len 0x%x ", pm, pm == pmap_kernel(), va, rest); if (pmap_get_pde_pte(pm, va, &pde, &ptep) && l2pte_valid(*ptep)) - cpu_l2cache_wb_range(va, rest); + cpu_l2cache_wb_range(va, rest); len -= rest; va += rest; @@ -1276,6 +1281,7 @@ pmap_dcache_wb_range(pmap_t pm, vm_offset_t va, vm_size_t len, boolean_t do_inv, boolean_t rd_only) { + CTR4(KTR_PMAP, "pmap_dcache_wb_range: pmap %p is_kernel %d va 0x%08x " "len 0x%x ", pm, pm == pmap_kernel(), va, len); CTR2(KTR_PMAP, " do_inv %d rd_only %d", do_inv, rd_only); @@ -1290,8 +1296,7 @@ cpu_dcache_wbinv_range(va, len); pmap_l2cache_wbinv_range(pm, va, len); } - } else - if (!rd_only) { + } else if (!rd_only) { cpu_dcache_wb_range(va, len); pmap_l2cache_wb_range(pm, va, len); } @@ -2455,6 +2460,8 @@ pmap_alloc_specials(&virtual_avail, 1, (vm_offset_t*)&_tmppt, NULL); + pmap_alloc_specials(&virtual_avail, + MAXDUMPPGS, (vm_offset_t *)&crashdumpmap, NULL); SLIST_INIT(&l1_list); TAILQ_INIT(&l1_lru_list); mtx_init(&l1_lru_lock, "l1 list lock", NULL, MTX_DEF); @@ -2793,6 +2800,20 @@ } /* + * Make a temporary mapping for a physical address. This is only intended + * to be used for panic dumps. + */ +void * +pmap_kenter_temp(vm_paddr_t pa, int i) +{ + vm_offset_t va; + + va = (vm_offset_t)crashdumpmap + (i * PAGE_SIZE); + pmap_kenter(va, pa); + return ((void *)crashdumpmap); +} + +/* * add a wired page to the kva * note that in order for the mapping to take effect -- you * should do a invltlb after doing the pmap_kenter... @@ -3958,7 +3979,7 @@ * Hook in the page, zero it, invalidate the TLB as needed. * * Note the temporary zero-page mapping must be a non-cached page in - * ordert to work without corruption when write-allocate is enabled. + * order to work without corruption when write-allocate is enabled. */ *cdst_pte = L2_S_PROTO | phys | L2_S_PROT(PTE_KERNEL, VM_PROT_WRITE); cpu_tlb_flushD_SE(cdstp); ==== //depot/projects/usb/src/sys/arm/include/md_var.h#3 (text+ko) ==== @@ -27,7 +27,7 @@ * SUCH DAMAGE. * * from: FreeBSD: src/sys/i386/include/md_var.h,v 1.40 2001/07/12 - * $FreeBSD: src/sys/arm/include/md_var.h,v 1.4 2007/01/17 00:53:05 cognet Exp $ + * $FreeBSD: src/sys/arm/include/md_var.h,v 1.5 2008/11/06 16:20:27 raj Exp $ */ #ifndef _MACHINE_MD_VAR_H_ @@ -35,6 +35,8 @@ extern char sigcode[]; extern int szsigcode; +extern uint32_t *vm_page_dump; +extern int vm_page_dump_size; extern int (*_arm_memcpy)(void *, void *, int, int); extern int (*_arm_bzero)(void *, int, int); @@ -46,7 +48,11 @@ #define SRC_IS_USER 0x2 #define IS_PHYSICAL 0x4 +struct dumperinfo; extern int busdma_swi_pending; void busdma_swi(void); +void dump_add_page(vm_paddr_t); +void dump_drop_page(vm_paddr_t); +void minidumpsys(struct dumperinfo *); #endif /* !_MACHINE_MD_VAR_H_ */ ==== //depot/projects/usb/src/sys/arm/include/pmap.h#8 (text+ko) ==== @@ -44,7 +44,7 @@ * from: @(#)pmap.h 7.4 (Berkeley) 5/12/91 * from: FreeBSD: src/sys/i386/include/pmap.h,v 1.70 2000/11/30 * - * $FreeBSD: src/sys/arm/include/pmap.h,v 1.29 2008/03/06 21:59:47 cognet Exp $ + * $FreeBSD: src/sys/arm/include/pmap.h,v 1.30 2008/11/06 16:20:27 raj Exp $ */ #ifndef _MACHINE_PMAP_H_ @@ -206,6 +206,7 @@ void pmap_bootstrap(vm_offset_t, vm_offset_t, struct pv_addr *); void pmap_kenter(vm_offset_t va, vm_paddr_t pa); void pmap_kenter_nocache(vm_offset_t va, vm_paddr_t pa); +void *pmap_kenter_temp(vm_paddr_t pa, int i); void pmap_kenter_user(vm_offset_t va, vm_paddr_t pa); void pmap_kremove(vm_offset_t); void *pmap_mapdev(vm_offset_t, vm_size_t); ==== //depot/projects/usb/src/sys/arm/mv/mv_machdep.c#2 (text+ko) ==== @@ -39,7 +39,7 @@ #include "opt_ddb.h" #include -__FBSDID("$FreeBSD: src/sys/arm/mv/mv_machdep.c,v 1.1 2008/10/13 20:07:13 raj Exp $"); +__FBSDID("$FreeBSD: src/sys/arm/mv/mv_machdep.c,v 1.2 2008/11/06 16:25:12 raj Exp $"); #define _ARM32_BUS_DMA_PRIVATE #include @@ -93,9 +93,6 @@ #define debugf(fmt, args...) #endif -#define KERNEL_PT_SYS 0 /* Page table for mapping proc0 zero page */ -#define KERNEL_PT_KERN 1 - /* * This is the number of L2 page tables required for covering max * (hypothetical) memsize of 4GB and all kernel mappings (vectors, msgbuf, @@ -366,7 +363,7 @@ struct bi_mem_region *mr; void *kmdp; u_int l1pagetable; - int i = 0; + int i = 0, j = 0; kmdp = NULL; lastaddr = 0; @@ -465,13 +462,14 @@ if (!(i % (PAGE_SIZE / L2_TABLE_SIZE_REAL))) { valloc_pages(kernel_pt_table[i], L2_TABLE_SIZE / PAGE_SIZE); + j = i; } else { - kernel_pt_table[i].pv_va = freemempos - - (i % (PAGE_SIZE / L2_TABLE_SIZE_REAL)) * - L2_TABLE_SIZE_REAL; + kernel_pt_table[i].pv_va = kernel_pt_table[j].pv_va + + L2_TABLE_SIZE_REAL * (i - j); kernel_pt_table[i].pv_pa = kernel_pt_table[i].pv_va - KERNVIRTADDR + KERNPHYSADDR; + } } /* @@ -506,7 +504,7 @@ l2_start = lastaddr & ~(L1_S_OFFSET); for (i = 0 ; i < l2size - 1; i++) pmap_link_l2pt(l1pagetable, l2_start + i * L1_S_SIZE, - &kernel_pt_table[KERNEL_PT_KERN + i]); + &kernel_pt_table[i]); pmap_curmaxkvaddr = l2_start + (l2size - 1) * L1_S_SIZE; @@ -532,7 +530,7 @@ /* Link and map the vector page */ pmap_link_l2pt(l1pagetable, ARM_VECTORS_HIGH, - &kernel_pt_table[KERNEL_PT_SYS]); + &kernel_pt_table[l2size - 1]); pmap_map_entry(l1pagetable, ARM_VECTORS_HIGH, systempage.pv_pa, VM_PROT_READ|VM_PROT_WRITE, PTE_CACHE); @@ -603,8 +601,8 @@ arm_vector_init(ARM_VECTORS_HIGH, ARM_VEC_ALL); - dump_avail[0] = KERNPHYSADDR; - dump_avail[1] = KERNPHYSADDR + memsize; + dump_avail[0] = 0; + dump_avail[1] = memsize; dump_avail[2] = 0; dump_avail[3] = 0; ==== //depot/projects/usb/src/sys/cddl/compat/opensolaris/kern/opensolaris_kmem.c#3 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/cddl/compat/opensolaris/kern/opensolaris_kmem.c,v 1.5 2008/05/24 19:30:38 bz Exp $"); +__FBSDID("$FreeBSD: src/sys/cddl/compat/opensolaris/kern/opensolaris_kmem.c,v 1.7 2008/11/05 20:32:13 rodrigc Exp $"); #include #include @@ -93,6 +93,10 @@ zfs_kmem_free(void *buf, size_t size __unused) { #ifdef KMEM_DEBUG + if (buf == NULL) { + printf("%s: attempt to free NULL\n",__func__); + return; + } struct kmem_item *i; buf = (u_char *)buf - sizeof(struct kmem_item); @@ -236,7 +240,8 @@ } #ifdef KMEM_DEBUG -static void +void kmem_show(void *); +void kmem_show(void *dummy __unused) { struct kmem_item *i; @@ -248,12 +253,10 @@ printf("KMEM_DEBUG: Leaked elements:\n\n"); LIST_FOREACH(i, &kmem_items, next) { printf("address=%p\n", i); - stack_print(&i->stack); - printf("\n"); } } mtx_unlock(&kmem_items_mtx); } -SYSUNINIT(sol_kmem, SI_SUB_DRIVERS, SI_ORDER_FIRST, kmem_show, NULL); +SYSUNINIT(sol_kmem, SI_SUB_CPU, SI_ORDER_FIRST, kmem_show, NULL); #endif /* KMEM_DEBUG */ ==== //depot/projects/usb/src/sys/cddl/compat/opensolaris/sys/types.h#2 (text+ko) ==== @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/cddl/compat/opensolaris/sys/types.h,v 1.4 2008/03/28 22:16:06 jb Exp $ + * $FreeBSD: src/sys/cddl/compat/opensolaris/sys/types.h,v 1.5 2008/11/05 19:39:11 rodrigc Exp $ */ #ifndef _OPENSOLARIS_SYS_TYPES_H_ @@ -64,12 +64,13 @@ typedef int64_t rlim64_t; #else - +#ifdef NEED_SOLARIS_BOOLEAN #if defined(__XOPEN_OR_POSIX) typedef enum { _B_FALSE, _B_TRUE } boolean_t; #else typedef enum { B_FALSE, B_TRUE } boolean_t; #endif /* defined(__XOPEN_OR_POSIX) */ +#endif typedef longlong_t offset_t; typedef u_longlong_t u_offset_t; ==== //depot/projects/usb/src/sys/cddl/compat/opensolaris/sys/uio.h#2 (text+ko) ==== @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/cddl/compat/opensolaris/sys/uio.h,v 1.2 2008/03/28 22:16:06 jb Exp $ + * $FreeBSD: src/sys/cddl/compat/opensolaris/sys/uio.h,v 1.3 2008/11/05 19:39:11 rodrigc Exp $ */ #ifndef _OPENSOLARIS_SYS_UIO_H_ @@ -51,6 +51,7 @@ #define uio_loffset uio_offset +#ifdef BUILDING_ZFS static __inline int zfs_uiomove(void *cp, size_t n, enum uio_rw dir, uio_t *uio) { @@ -59,5 +60,6 @@ return (uiomove(cp, (int)n, uio)); } #define uiomove(cp, n, dir, uio) zfs_uiomove((cp), (n), (dir), (uio)) +#endif #endif /* !_OPENSOLARIS_SYS_UIO_H_ */ ==== //depot/projects/usb/src/sys/cddl/contrib/opensolaris/uts/common/dtrace/dtrace.c#5 (text+ko) ==== @@ -18,7 +18,7 @@ * * CDDL HEADER END * - * $FreeBSD: src/sys/cddl/contrib/opensolaris/uts/common/dtrace/dtrace.c,v 1.8 2008/09/27 17:52:48 jb Exp $ + * $FreeBSD: src/sys/cddl/contrib/opensolaris/uts/common/dtrace/dtrace.c,v 1.9 2008/11/05 19:39:11 rodrigc Exp $ */ /* @@ -3007,6 +3007,9 @@ case DIF_VAR_EXECARGS: { struct pargs *p_args = curthread->td_proc->p_args; + if (p_args == NULL) + return(0); + return (dtrace_dif_varstrz( (uintptr_t) p_args->ar_args, p_args->ar_length, state, mstate)); } @@ -10598,7 +10601,6 @@ /* * If there is already a buffer allocated for this CPU, it * is only possible that this is a DR event. In this case, - * the buffer size must match our specified size. */ if (buf->dtb_tomax != NULL) { ASSERT(buf->dtb_size == size); @@ -12815,11 +12817,7 @@ state = ddi_get_soft_state(dtrace_softstate, minor); #else if (dev != NULL) { - /* - * Disable this until we have the ability to set user - * credentials for DTrace. - * cr = dev->si_cred; - */ + cr = dev->si_cred; m = dev2unit(dev); } @@ -15241,6 +15239,15 @@ } #endif +#if !defined(sun) +#if __FreeBSD_version >= 800039 +static void +dtrace_dtr(void *data __unused) +{ +} +#endif +#endif + /*ARGSUSED*/ static int #if defined(sun) @@ -15266,6 +15273,7 @@ #else cred_t *cred_p = NULL; +#if __FreeBSD_version < 800039 /* * The first minor device is the one that is cloned so there is * nothing more to do here. @@ -15281,6 +15289,7 @@ */ if (dev->si_drv1 != NULL) return (EBUSY); +#endif cred_p = dev->si_cred; #endif @@ -15292,9 +15301,11 @@ dtrace_cred2priv(cred_p, &priv, &uid, &zoneid); if (priv == DTRACE_PRIV_NONE) { #if !defined(sun) +#if __FreeBSD_version < 800039 /* Destroy the cloned device. */ destroy_dev(dev); #endif +#endif return (EACCES); } @@ -15326,7 +15337,11 @@ state = dtrace_state_create(devp, cred_p); #else state = dtrace_state_create(dev); +#if __FreeBSD_version < 800039 dev->si_drv1 = state; +#else + devfs_set_cdevpriv(state, dtrace_dtr); +#endif #endif mutex_exit(&cpu_lock); @@ -15340,9 +15355,11 @@ #endif mutex_exit(&dtrace_lock); #if !defined(sun) +#if __FreeBSD_version < 800039 /* Destroy the cloned device. */ destroy_dev(dev); #endif +#endif return (EAGAIN); } @@ -15368,11 +15385,16 @@ state = ddi_get_soft_state(dtrace_softstate, minor); #else +#if __FreeBSD_version < 800039 dtrace_state_t *state = dev->si_drv1; /* Check if this is not a cloned device. */ if (dev2unit(dev) == 0) return (0); +#else + dtrace_state_t *state; + devfs_get_cdevpriv((void **) &state); +#endif #endif @@ -15392,7 +15414,11 @@ #if !defined(sun) kmem_free(state, 0); +#if __FreeBSD_version < 800039 dev->si_drv1 = NULL; +#else + devfs_clear_cdevpriv(); +#endif #endif } @@ -15407,8 +15433,10 @@ mutex_exit(&dtrace_lock); mutex_exit(&cpu_lock); >>> TRUNCATED FOR MAIL (1000 lines) <<<