From owner-p4-projects@FreeBSD.ORG Mon Sep 8 04:49:12 2014 Return-Path: Delivered-To: p4-projects@freebsd.org Received: by hub.freebsd.org (Postfix, from userid 32767) id 1D6E7684; Mon, 8 Sep 2014 04:49:12 +0000 (UTC) Delivered-To: perforce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 95903579 for ; Mon, 8 Sep 2014 04:49:10 +0000 (UTC) Received: from skunkworks.freebsd.org (skunkworks.freebsd.org [IPv6:2001:1900:2254:2068::682:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 7A8931A2F for ; Mon, 8 Sep 2014 04:49:10 +0000 (UTC) Received: from skunkworks.freebsd.org ([127.0.1.74]) by skunkworks.freebsd.org (8.14.9/8.14.9) with ESMTP id s884nAaK020225 for ; Mon, 8 Sep 2014 04:49:10 GMT (envelope-from jmg@freebsd.org) Received: (from perforce@localhost) by skunkworks.freebsd.org (8.14.9/8.14.9/Submit) id s884n9Av020219 for perforce@freebsd.org; Mon, 8 Sep 2014 04:49:09 GMT (envelope-from jmg@freebsd.org) Date: Mon, 8 Sep 2014 04:49:09 GMT Message-Id: <201409080449.s884n9Av020219@skunkworks.freebsd.org> X-Authentication-Warning: skunkworks.freebsd.org: perforce set sender to jmg@freebsd.org using -f From: John-Mark Gurney Subject: PERFORCE change 1198649 for review To: Perforce Change Reviews Precedence: bulk X-BeenThere: p4-projects@freebsd.org X-Mailman-Version: 2.1.18-1 List-Id: p4 projects tree changes List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 08 Sep 2014 04:49:12 -0000 http://p4web.freebsd.org/@@1198649?ac=10 Change 1198649 by jmg@jmg_carbon2 on 2014/08/13 04:52:06 really integrate from head, not just man... Affected files ... .. //depot/projects/opencrypto/sys/amd64/amd64/pmap.c#2 integrate .. //depot/projects/opencrypto/sys/amd64/include/sf_buf.h#2 integrate .. //depot/projects/opencrypto/sys/amd64/vmm/vmm_instruction_emul.c#2 integrate .. //depot/projects/opencrypto/sys/arm/arm/elf_machdep.c#2 integrate .. //depot/projects/opencrypto/sys/arm/arm/generic_timer.c#2 integrate .. //depot/projects/opencrypto/sys/arm/arm/gic.c#2 integrate .. //depot/projects/opencrypto/sys/arm/arm/intr.c#2 integrate .. //depot/projects/opencrypto/sys/arm/arm/machdep.c#2 integrate .. //depot/projects/opencrypto/sys/arm/arm/mpcore_timer.c#2 integrate .. //depot/projects/opencrypto/sys/arm/arm/nexus.c#2 integrate .. //depot/projects/opencrypto/sys/arm/arm/pl190.c#2 integrate .. //depot/projects/opencrypto/sys/arm/arm/pl310.c#2 integrate .. //depot/projects/opencrypto/sys/arm/arm/pmap-v6.c#2 integrate .. //depot/projects/opencrypto/sys/arm/arm/pmap.c#2 integrate .. //depot/projects/opencrypto/sys/arm/arm/vm_machdep.c#2 integrate .. //depot/projects/opencrypto/sys/arm/freescale/imx/imx51_ipuv3_fbd.c#2 integrate .. //depot/projects/opencrypto/sys/arm/freescale/imx/imx6_ccmreg.h#2 integrate .. //depot/projects/opencrypto/sys/arm/freescale/imx/imx6_machdep.c#2 integrate .. //depot/projects/opencrypto/sys/arm/include/pl310.h#2 integrate .. //depot/projects/opencrypto/sys/arm/include/sf_buf.h#2 integrate .. //depot/projects/opencrypto/sys/arm/include/vmparam.h#2 integrate .. //depot/projects/opencrypto/sys/arm/samsung/exynos/chrome_ec.c#2 integrate .. //depot/projects/opencrypto/sys/arm/samsung/exynos/chrome_ec_spi.c#2 integrate .. //depot/projects/opencrypto/sys/arm/samsung/exynos/chrome_kb.c#2 integrate .. //depot/projects/opencrypto/sys/arm/samsung/exynos/exynos5_combiner.c#2 integrate .. //depot/projects/opencrypto/sys/arm/samsung/exynos/exynos5_ehci.c#2 integrate .. //depot/projects/opencrypto/sys/arm/samsung/exynos/exynos5_fimd.c#2 integrate .. //depot/projects/opencrypto/sys/arm/samsung/exynos/exynos5_i2c.c#2 integrate .. //depot/projects/opencrypto/sys/arm/samsung/exynos/exynos5_machdep.c#2 integrate .. //depot/projects/opencrypto/sys/arm/samsung/exynos/exynos5_mct.c#2 integrate .. //depot/projects/opencrypto/sys/arm/samsung/exynos/exynos5_pad.c#2 integrate .. //depot/projects/opencrypto/sys/arm/samsung/exynos/exynos5_pmu.c#2 integrate .. //depot/projects/opencrypto/sys/arm/samsung/exynos/exynos5_spi.c#2 integrate .. //depot/projects/opencrypto/sys/arm/samsung/exynos/exynos5_usb_phy.c#2 integrate .. //depot/projects/opencrypto/sys/arm/samsung/exynos/exynos5_xhci.c#2 integrate .. //depot/projects/opencrypto/sys/arm/xscale/ixp425/if_npe.c#2 integrate .. //depot/projects/opencrypto/sys/boot/common/Makefile.inc#2 integrate .. //depot/projects/opencrypto/sys/boot/common/bootstrap.h#2 integrate .. //depot/projects/opencrypto/sys/boot/common/install.c#1 branch .. //depot/projects/opencrypto/sys/boot/common/module.c#2 integrate .. //depot/projects/opencrypto/sys/boot/kshim/bsd_busspace.c#1 branch .. //depot/projects/opencrypto/sys/boot/kshim/bsd_global.h#1 branch .. //depot/projects/opencrypto/sys/boot/kshim/bsd_kernel.c#1 branch .. //depot/projects/opencrypto/sys/boot/kshim/bsd_kernel.h#1 branch .. //depot/projects/opencrypto/sys/boot/kshim/kshim.mk#1 branch .. //depot/projects/opencrypto/sys/boot/kshim/sysinit.h#1 branch .. //depot/projects/opencrypto/sys/boot/usb/Makefile#2 integrate .. //depot/projects/opencrypto/sys/boot/usb/bsd_busspace.c#2 delete .. //depot/projects/opencrypto/sys/boot/usb/bsd_global.h#2 delete .. //depot/projects/opencrypto/sys/boot/usb/bsd_kernel.c#2 delete .. //depot/projects/opencrypto/sys/boot/usb/bsd_kernel.h#2 delete .. //depot/projects/opencrypto/sys/boot/usb/tools/Makefile#1 branch .. //depot/projects/opencrypto/sys/boot/usb/tools/sysinit.h#2 delete .. //depot/projects/opencrypto/sys/boot/usb/usbcore.mk#1 branch .. //depot/projects/opencrypto/sys/boot/userboot/userboot/devicename.c#2 integrate .. //depot/projects/opencrypto/sys/cam/ctl/ctl.c#2 integrate .. //depot/projects/opencrypto/sys/cam/ctl/ctl_backend_block.c#2 integrate .. //depot/projects/opencrypto/sys/cam/ctl/ctl_cmd_table.c#2 integrate .. //depot/projects/opencrypto/sys/cam/ctl/ctl_private.h#2 integrate .. //depot/projects/opencrypto/sys/cam/ctl/ctl_ser_table.c#2 integrate .. //depot/projects/opencrypto/sys/cam/ctl/ctl_tpc.c#2 integrate .. //depot/projects/opencrypto/sys/cam/ctl/ctl_util.c#2 integrate .. //depot/projects/opencrypto/sys/cam/ctl/ctl_util.h#2 integrate .. //depot/projects/opencrypto/sys/cam/scsi/scsi_all.c#2 integrate .. //depot/projects/opencrypto/sys/cam/scsi/scsi_all.h#2 integrate .. //depot/projects/opencrypto/sys/cddl/compat/opensolaris/sys/time.h#2 integrate .. //depot/projects/opencrypto/sys/cddl/contrib/opensolaris/uts/common/dtrace/dtrace.c#2 integrate .. //depot/projects/opencrypto/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dbuf.c#2 integrate .. //depot/projects/opencrypto/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/vdev.c#2 integrate .. //depot/projects/opencrypto/sys/conf/Makefile.arm#2 integrate .. //depot/projects/opencrypto/sys/conf/files#4 integrate .. //depot/projects/opencrypto/sys/conf/files.arm#2 integrate .. //depot/projects/opencrypto/sys/conf/files.i386#3 integrate .. //depot/projects/opencrypto/sys/conf/files.mips#2 integrate .. //depot/projects/opencrypto/sys/conf/files.pc98#2 integrate .. //depot/projects/opencrypto/sys/conf/files.powerpc#2 integrate .. //depot/projects/opencrypto/sys/conf/files.sparc64#2 integrate .. //depot/projects/opencrypto/sys/conf/kern.opts.mk#2 integrate .. //depot/projects/opencrypto/sys/conf/kern.post.mk#2 integrate .. //depot/projects/opencrypto/sys/conf/kmod.mk#2 integrate .. //depot/projects/opencrypto/sys/conf/options#2 integrate .. //depot/projects/opencrypto/sys/conf/options.arm#2 integrate .. //depot/projects/opencrypto/sys/contrib/dev/ath/ath_hal/ar9300/ar9300_power.c#2 integrate .. //depot/projects/opencrypto/sys/contrib/dev/ath/ath_hal/ar9300/ar9300_recv.c#2 integrate .. //depot/projects/opencrypto/sys/contrib/dev/ath/ath_hal/ar9300/ar9300_reset.c#2 integrate .. //depot/projects/opencrypto/sys/contrib/ipfilter/netinet/ip_compat.h#2 integrate .. //depot/projects/opencrypto/sys/dev/acpica/acpi_cpu.c#2 integrate .. //depot/projects/opencrypto/sys/dev/acpica/acpi_hpet.c#2 integrate .. //depot/projects/opencrypto/sys/dev/acpica/acpi_timer.c#2 integrate .. //depot/projects/opencrypto/sys/dev/aic7xxx/aic79xx_pci.c#2 integrate .. //depot/projects/opencrypto/sys/dev/amr/amr.c#2 integrate .. //depot/projects/opencrypto/sys/dev/an/if_an.c#2 integrate .. //depot/projects/opencrypto/sys/dev/ata/chipsets/ata-promise.c#2 integrate .. //depot/projects/opencrypto/sys/dev/ath/ath_hal/ah.c#2 integrate .. //depot/projects/opencrypto/sys/dev/ath/ath_hal/ah_decode.h#2 integrate .. //depot/projects/opencrypto/sys/dev/ath/ath_hal/ah_internal.h#2 integrate .. //depot/projects/opencrypto/sys/dev/ath/if_ath.c#2 integrate .. //depot/projects/opencrypto/sys/dev/cxgbe/common/common.h#2 integrate .. //depot/projects/opencrypto/sys/dev/cxgbe/common/t4_hw.c#2 integrate .. //depot/projects/opencrypto/sys/dev/cxgbe/t4_main.c#2 integrate .. //depot/projects/opencrypto/sys/dev/drm2/i915/i915_gem.c#2 integrate .. //depot/projects/opencrypto/sys/dev/drm2/ttm/ttm_bo_vm.c#2 integrate .. //depot/projects/opencrypto/sys/dev/esp/ncr53c9x.c#2 integrate .. //depot/projects/opencrypto/sys/dev/fb/creator_vt.c#1 branch .. //depot/projects/opencrypto/sys/dev/fb/fbd.c#2 integrate .. //depot/projects/opencrypto/sys/dev/fdt/simplebus.c#2 integrate .. //depot/projects/opencrypto/sys/dev/hpt27xx/hpt27xx_os_bsd.c#2 integrate .. //depot/projects/opencrypto/sys/dev/hpt27xx/hpt27xx_osm_bsd.c#2 integrate .. //depot/projects/opencrypto/sys/dev/hpt27xx/os_bsd.h#2 integrate .. //depot/projects/opencrypto/sys/dev/hptiop/hptiop.c#2 integrate .. //depot/projects/opencrypto/sys/dev/hptiop/hptiop.h#2 integrate .. //depot/projects/opencrypto/sys/dev/hptmv/entry.c#2 integrate .. //depot/projects/opencrypto/sys/dev/hptmv/global.h#2 integrate .. //depot/projects/opencrypto/sys/dev/hptmv/hptproc.c#2 integrate .. //depot/projects/opencrypto/sys/dev/hptmv/ioctl.c#2 integrate .. //depot/projects/opencrypto/sys/dev/hptmv/mv.c#2 integrate .. //depot/projects/opencrypto/sys/dev/hptmv/osbsd.h#2 integrate .. //depot/projects/opencrypto/sys/dev/hptnr/hptnr_os_bsd.c#2 integrate .. //depot/projects/opencrypto/sys/dev/hptnr/hptnr_osm_bsd.c#2 integrate .. //depot/projects/opencrypto/sys/dev/hptnr/os_bsd.h#2 integrate .. //depot/projects/opencrypto/sys/dev/hptrr/hptrr_os_bsd.c#2 integrate .. //depot/projects/opencrypto/sys/dev/hptrr/hptrr_osm_bsd.c#2 integrate .. //depot/projects/opencrypto/sys/dev/hptrr/os_bsd.h#2 integrate .. //depot/projects/opencrypto/sys/dev/iwn/if_iwn.c#2 integrate .. //depot/projects/opencrypto/sys/dev/nfe/if_nfe.c#2 integrate .. //depot/projects/opencrypto/sys/dev/oce/oce_mbox.c#2 integrate .. //depot/projects/opencrypto/sys/dev/ofw/ofwbus.c#2 integrate .. //depot/projects/opencrypto/sys/dev/pccbb/pccbb_pci.c#2 integrate .. //depot/projects/opencrypto/sys/dev/usb/controller/at91dci.c#2 integrate .. //depot/projects/opencrypto/sys/dev/usb/controller/at91dci.h#2 integrate .. //depot/projects/opencrypto/sys/dev/usb/controller/at91dci_atmelarm.c#2 integrate .. //depot/projects/opencrypto/sys/dev/usb/controller/at91dci_fdt.c#2 integrate .. //depot/projects/opencrypto/sys/dev/usb/controller/ehci.c#2 integrate .. //depot/projects/opencrypto/sys/dev/usb/controller/saf1761_otg.c#2 integrate .. //depot/projects/opencrypto/sys/dev/usb/controller/usb_controller.c#2 integrate .. //depot/projects/opencrypto/sys/dev/usb/controller/uss820dci.c#2 integrate .. //depot/projects/opencrypto/sys/dev/usb/controller/uss820dci.h#2 integrate .. //depot/projects/opencrypto/sys/dev/usb/controller/uss820dci_atmelarm.c#2 integrate .. //depot/projects/opencrypto/sys/dev/usb/gadget/g_audio.c#2 integrate .. //depot/projects/opencrypto/sys/dev/usb/net/if_cdce.c#2 integrate .. //depot/projects/opencrypto/sys/dev/usb/quirk/usb_quirk.c#2 integrate .. //depot/projects/opencrypto/sys/dev/usb/quirk/usb_quirk.h#2 integrate .. //depot/projects/opencrypto/sys/dev/usb/serial/u3g.c#2 integrate .. //depot/projects/opencrypto/sys/dev/usb/serial/uftdi.c#2 integrate .. //depot/projects/opencrypto/sys/dev/usb/serial/umcs.c#2 integrate .. //depot/projects/opencrypto/sys/dev/usb/template/usb_template.c#2 integrate .. //depot/projects/opencrypto/sys/dev/usb/template/usb_template.h#2 integrate .. //depot/projects/opencrypto/sys/dev/usb/template/usb_template_phone.c#1 branch .. //depot/projects/opencrypto/sys/dev/usb/usb_device.c#2 integrate .. //depot/projects/opencrypto/sys/dev/usb/usb_ioctl.h#2 integrate .. //depot/projects/opencrypto/sys/dev/usb/usb_msctest.c#2 integrate .. //depot/projects/opencrypto/sys/dev/usb/usb_msctest.h#2 integrate .. //depot/projects/opencrypto/sys/dev/usb/usbdevs#2 integrate .. //depot/projects/opencrypto/sys/dev/usb/wlan/if_upgt.c#2 integrate .. //depot/projects/opencrypto/sys/dev/vt/colors/vt_termcolors.c#2 integrate .. //depot/projects/opencrypto/sys/dev/vt/colors/vt_termcolors.h#2 integrate .. //depot/projects/opencrypto/sys/dev/vt/hw/efifb/efifb.c#2 integrate .. //depot/projects/opencrypto/sys/dev/vt/hw/fb/vt_early_fb.c#2 integrate .. //depot/projects/opencrypto/sys/dev/vt/hw/fb/vt_fb.c#2 integrate .. //depot/projects/opencrypto/sys/dev/vt/hw/fb/vt_fb.h#2 integrate .. //depot/projects/opencrypto/sys/dev/vt/hw/ofwfb/ofwfb.c#2 integrate .. //depot/projects/opencrypto/sys/dev/vt/hw/vga/vt_vga.c#2 integrate .. //depot/projects/opencrypto/sys/dev/vt/vt.h#2 integrate .. //depot/projects/opencrypto/sys/dev/vt/vt_buf.c#2 integrate .. //depot/projects/opencrypto/sys/dev/vt/vt_core.c#2 integrate .. //depot/projects/opencrypto/sys/dev/xen/blkfront/blkfront.c#2 integrate .. //depot/projects/opencrypto/sys/dev/xen/console/xencons_ring.c#2 integrate .. //depot/projects/opencrypto/sys/fs/ext2fs/ext2_dir.h#2 integrate .. //depot/projects/opencrypto/sys/fs/nfsserver/nfs_nfsdsocket.c#2 integrate .. //depot/projects/opencrypto/sys/fs/nullfs/null_vnops.c#2 integrate .. //depot/projects/opencrypto/sys/geom/cache/g_cache.c#2 integrate .. //depot/projects/opencrypto/sys/geom/journal/g_journal.c#2 integrate .. //depot/projects/opencrypto/sys/geom/part/g_part_mbr.c#2 integrate .. //depot/projects/opencrypto/sys/gnu/dts/include/dt-bindings/clock/imx6sl-clock.h#2 integrate .. //depot/projects/opencrypto/sys/i386/acpica/acpi_wakecode.S#2 integrate .. //depot/projects/opencrypto/sys/i386/i386/pmap.c#2 integrate .. //depot/projects/opencrypto/sys/i386/i386/vm_machdep.c#2 integrate .. //depot/projects/opencrypto/sys/i386/include/sf_buf.h#2 integrate .. //depot/projects/opencrypto/sys/i386/include/vmparam.h#2 integrate .. //depot/projects/opencrypto/sys/i386/xen/pmap.c#2 integrate .. //depot/projects/opencrypto/sys/kern/kern_exit.c#2 integrate .. //depot/projects/opencrypto/sys/kern/kern_proc.c#2 integrate .. //depot/projects/opencrypto/sys/kern/kern_time.c#2 integrate .. //depot/projects/opencrypto/sys/kern/subr_sfbuf.c#1 branch .. //depot/projects/opencrypto/sys/kern/subr_taskqueue.c#2 integrate .. //depot/projects/opencrypto/sys/kern/subr_witness.c#2 integrate .. //depot/projects/opencrypto/sys/kern/sys_process.c#2 integrate .. //depot/projects/opencrypto/sys/kern/uipc_socket.c#2 integrate .. //depot/projects/opencrypto/sys/kern/uipc_syscalls.c#2 integrate .. //depot/projects/opencrypto/sys/kern/uipc_usrreq.c#2 integrate .. //depot/projects/opencrypto/sys/kern/vfs_bio.c#2 integrate .. //depot/projects/opencrypto/sys/kern/vfs_cache.c#2 integrate .. //depot/projects/opencrypto/sys/kern/vfs_init.c#2 integrate .. //depot/projects/opencrypto/sys/kern/vfs_mount.c#2 integrate .. //depot/projects/opencrypto/sys/kern/vfs_subr.c#2 integrate .. //depot/projects/opencrypto/sys/mips/include/sf_buf.h#2 integrate .. //depot/projects/opencrypto/sys/mips/include/vmparam.h#2 integrate .. //depot/projects/opencrypto/sys/mips/mips/pmap.c#2 integrate .. //depot/projects/opencrypto/sys/mips/mips/vm_machdep.c#2 integrate .. //depot/projects/opencrypto/sys/modules/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/acl_nfs4/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/acl_posix1e/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/aic7xxx/ahc/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/alq/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/an/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/arcnet/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/cam/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/carp/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/cc/cc_cdg/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/cc/cc_chd/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/cc/cc_cubic/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/cc/cc_hd/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/cc/cc_htcp/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/cc/cc_vegas/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/cxgb/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/cxgb/cxgb/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/cxgb/iw_cxgb/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/cxgb/tom/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/cxgbe/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/cxgbe/if_cxgbe/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/cxgbe/iw_cxgbe/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/cxgbe/tom/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/dpt/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/drm/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/drm2/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/drm2/radeonkms/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/dtrace/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/dummynet/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/em/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/en/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/ep/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/fatm/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/firewire/fwip/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/hatm/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/i40e/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/ibcore/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/if_bridge/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/if_disc/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/if_faith/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/if_gif/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/if_gre/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/if_lagg/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/if_stf/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/if_tap/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/if_tun/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/igb/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/ip6_mroute_mod/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/ip_mroute_mod/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/ipdivert/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/ipfilter/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/ipfw/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/ipoib/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/ixgbe/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/khelp/h_ertt/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/krpc/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/linux/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/lmc/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/mlx4/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/mlx4ib/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/mlxen/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/mthca/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/netgraph/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/netgraph/gif/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/netgraph/iface/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/netgraph/ipfw/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/netgraph/netflow/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/nfscl/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/nfsclient/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/nfslockd/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/nfsserver/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/patm/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/pf/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/pflog/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/pfsync/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/siftr/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/smbfs/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/snc/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/sound/driver/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/sppp/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/trm/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/usb/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/usb/template/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/virtio/network/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/vmware/vmxnet3/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/vx/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/wlan/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/wlan_acl/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/wlan_amrr/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/wlan_ccmp/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/wlan_rssadapt/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/wlan_tkip/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/wlan_wep/Makefile#2 integrate .. //depot/projects/opencrypto/sys/modules/wlan_xauth/Makefile#2 integrate .. //depot/projects/opencrypto/sys/net/if_lagg.c#2 integrate .. //depot/projects/opencrypto/sys/net/if_lagg.h#2 integrate .. //depot/projects/opencrypto/sys/net/if_stf.c#2 integrate .. //depot/projects/opencrypto/sys/net/if_stf.h#2 integrate .. //depot/projects/opencrypto/sys/net/if_vlan.c#2 integrate .. //depot/projects/opencrypto/sys/net80211/ieee80211.c#2 integrate .. //depot/projects/opencrypto/sys/netinet/cc/cc.c#2 integrate .. //depot/projects/opencrypto/sys/netinet/igmp.c#2 integrate .. //depot/projects/opencrypto/sys/netinet/igmp_var.h#2 integrate .. //depot/projects/opencrypto/sys/netinet/in_gif.c#2 integrate .. //depot/projects/opencrypto/sys/netinet/in_gif.h#2 integrate .. //depot/projects/opencrypto/sys/netinet/ip_carp.c#2 integrate .. //depot/projects/opencrypto/sys/netinet/ip_carp.h#2 integrate .. //depot/projects/opencrypto/sys/netinet/ip_divert.c#2 integrate .. //depot/projects/opencrypto/sys/netinet/ip_encap.c#2 integrate .. //depot/projects/opencrypto/sys/netinet/ip_encap.h#2 integrate .. //depot/projects/opencrypto/sys/netinet/ip_gre.c#2 integrate .. //depot/projects/opencrypto/sys/netinet/ip_gre.h#2 integrate .. //depot/projects/opencrypto/sys/netinet/ip_icmp.c#2 integrate .. //depot/projects/opencrypto/sys/netinet/ip_icmp.h#2 integrate .. //depot/projects/opencrypto/sys/netinet/ip_input.c#2 integrate .. //depot/projects/opencrypto/sys/netinet/ip_mroute.c#2 integrate .. //depot/projects/opencrypto/sys/netinet/ip_var.h#2 integrate .. //depot/projects/opencrypto/sys/netinet/pim_var.h#2 integrate .. //depot/projects/opencrypto/sys/netinet/raw_ip.c#2 integrate .. //depot/projects/opencrypto/sys/netinet/sctp.h#2 integrate .. //depot/projects/opencrypto/sys/netinet/sctp_asconf.c#2 integrate .. //depot/projects/opencrypto/sys/netinet/sctp_auth.c#2 integrate .. //depot/projects/opencrypto/sys/netinet/sctp_auth.h#2 integrate .. //depot/projects/opencrypto/sys/netinet/sctp_input.c#2 integrate .. //depot/projects/opencrypto/sys/netinet/sctp_output.c#2 integrate .. //depot/projects/opencrypto/sys/netinet/sctp_pcb.c#2 integrate .. //depot/projects/opencrypto/sys/netinet/sctp_pcb.h#2 integrate .. //depot/projects/opencrypto/sys/netinet/sctp_peeloff.c#2 integrate .. //depot/projects/opencrypto/sys/netinet/sctp_structs.h#2 integrate .. //depot/projects/opencrypto/sys/netinet/sctp_sysctl.c#2 integrate .. //depot/projects/opencrypto/sys/netinet/sctp_sysctl.h#2 integrate .. //depot/projects/opencrypto/sys/netinet/sctp_usrreq.c#2 integrate .. //depot/projects/opencrypto/sys/netinet/sctp_var.h#2 integrate .. //depot/projects/opencrypto/sys/netinet/sctputil.c#2 integrate .. //depot/projects/opencrypto/sys/netinet/tcp_input.c#2 integrate .. //depot/projects/opencrypto/sys/netinet/tcp_timewait.c#2 integrate .. //depot/projects/opencrypto/sys/netinet/tcp_var.h#2 integrate .. //depot/projects/opencrypto/sys/netinet/udp_usrreq.c#2 integrate .. //depot/projects/opencrypto/sys/netinet/udp_var.h#2 integrate .. //depot/projects/opencrypto/sys/netinet6/in6_gif.c#2 integrate .. //depot/projects/opencrypto/sys/netinet6/in6_proto.c#2 integrate .. //depot/projects/opencrypto/sys/netinet6/ip6_forward.c#2 integrate .. //depot/projects/opencrypto/sys/netinet6/ip6_input.c#2 integrate .. //depot/projects/opencrypto/sys/netinet6/ip6_mroute.c#2 integrate .. //depot/projects/opencrypto/sys/netinet6/ip6_var.h#2 integrate .. //depot/projects/opencrypto/sys/netinet6/ip6protosw.h#2 integrate .. //depot/projects/opencrypto/sys/netinet6/raw_ip6.c#2 integrate .. //depot/projects/opencrypto/sys/netipsec/ipsec.h#2 integrate .. //depot/projects/opencrypto/sys/netipsec/ipsec_input.c#2 integrate .. //depot/projects/opencrypto/sys/netipsec/xform.h#2 integrate .. //depot/projects/opencrypto/sys/netipsec/xform_ipip.c#2 integrate .. //depot/projects/opencrypto/sys/netpfil/pf/if_pfsync.c#2 integrate .. //depot/projects/opencrypto/sys/ofed/include/linux/linux_radix.c#2 integrate .. //depot/projects/opencrypto/sys/powerpc/aim/mmu_oea.c#2 integrate .. //depot/projects/opencrypto/sys/powerpc/aim/mmu_oea64.c#2 integrate .. //depot/projects/opencrypto/sys/powerpc/aim/trap.c#2 integrate .. //depot/projects/opencrypto/sys/powerpc/booke/pmap.c#2 integrate .. //depot/projects/opencrypto/sys/powerpc/include/sf_buf.h#2 delete .. //depot/projects/opencrypto/sys/powerpc/include/vmparam.h#2 integrate .. //depot/projects/opencrypto/sys/powerpc/powerpc/mmu_if.m#2 integrate .. //depot/projects/opencrypto/sys/powerpc/powerpc/pmap_dispatch.c#2 integrate .. //depot/projects/opencrypto/sys/powerpc/powerpc/vm_machdep.c#2 integrate .. //depot/projects/opencrypto/sys/powerpc/ps3/ps3_syscons.c#2 integrate .. //depot/projects/opencrypto/sys/sparc64/include/vmparam.h#2 integrate .. //depot/projects/opencrypto/sys/sparc64/sparc64/pmap.c#2 integrate .. //depot/projects/opencrypto/sys/sparc64/sparc64/vm_machdep.c#2 integrate .. //depot/projects/opencrypto/sys/sys/bus.h#2 integrate .. //depot/projects/opencrypto/sys/sys/exec.h#2 integrate .. //depot/projects/opencrypto/sys/sys/fbio.h#2 integrate .. //depot/projects/opencrypto/sys/sys/mount.h#2 integrate .. //depot/projects/opencrypto/sys/sys/proc.h#2 integrate .. //depot/projects/opencrypto/sys/sys/protosw.h#2 integrate .. //depot/projects/opencrypto/sys/sys/sf_buf.h#2 integrate .. //depot/projects/opencrypto/sys/sys/syscallsubr.h#2 integrate .. //depot/projects/opencrypto/sys/ufs/ffs/ffs_softdep.c#2 integrate .. //depot/projects/opencrypto/sys/ufs/ffs/softdep.h#2 integrate .. //depot/projects/opencrypto/sys/vm/pmap.h#2 integrate .. //depot/projects/opencrypto/sys/vm/vm_fault.c#2 integrate .. //depot/projects/opencrypto/sys/vm/vm_kern.c#2 integrate .. //depot/projects/opencrypto/sys/vm/vm_object.h#2 integrate .. //depot/projects/opencrypto/sys/vm/vm_page.c#2 integrate .. //depot/projects/opencrypto/sys/vm/vm_page.h#2 integrate .. //depot/projects/opencrypto/sys/vm/vm_pager.h#2 integrate .. //depot/projects/opencrypto/sys/vm/vm_phys.c#2 integrate .. //depot/projects/opencrypto/sys/x86/acpica/madt.c#2 integrate .. //depot/projects/opencrypto/sys/x86/include/acpica_machdep.h#2 integrate .. //depot/projects/opencrypto/sys/x86/include/init.h#2 integrate .. //depot/projects/opencrypto/sys/x86/isa/atpic.c#2 integrate .. //depot/projects/opencrypto/sys/x86/x86/local_apic.c#2 integrate .. //depot/projects/opencrypto/sys/x86/xen/pvcpu_enum.c#2 integrate .. //depot/projects/opencrypto/sys/x86/xen/xen_intr.c#2 integrate .. //depot/projects/opencrypto/sys/x86/xen/xen_nexus.c#2 integrate .. //depot/projects/opencrypto/sys/xen/xen_intr.h#2 integrate Differences ... ==== //depot/projects/opencrypto/sys/amd64/amd64/pmap.c#2 (text+ko) ==== @@ -79,7 +79,7 @@ #define AMD64_NPT_AWARE #include -__FBSDID("$FreeBSD: head/sys/amd64/amd64/pmap.c 269051 2014-07-24 10:12:22Z marius $"); +__FBSDID("$FreeBSD: head/sys/amd64/amd64/pmap.c 269759 2014-08-09 17:13:02Z alc $"); /* * Manages physical address maps. @@ -4116,9 +4116,9 @@ * or lose information. That is, this routine must actually * insert this page into the given map NOW. */ -void -pmap_enter(pmap_t pmap, vm_offset_t va, vm_prot_t access, vm_page_t m, - vm_prot_t prot, boolean_t wired) +int +pmap_enter(pmap_t pmap, vm_offset_t va, vm_page_t m, vm_prot_t prot, + u_int flags, int8_t psind __unused) { struct rwlock *lock; pd_entry_t *pde; @@ -4127,6 +4127,7 @@ pv_entry_t pv; vm_paddr_t opa, pa; vm_page_t mpte, om; + boolean_t nosleep; PG_A = pmap_accessed_bit(pmap); PG_G = pmap_global_bit(pmap); @@ -4143,18 +4144,18 @@ va >= kmi.clean_eva, ("pmap_enter: managed mapping within the clean submap")); if ((m->oflags & VPO_UNMANAGED) == 0 && !vm_page_xbusied(m)) - VM_OBJECT_ASSERT_WLOCKED(m->object); + VM_OBJECT_ASSERT_LOCKED(m->object); pa = VM_PAGE_TO_PHYS(m); newpte = (pt_entry_t)(pa | PG_A | PG_V); - if ((access & VM_PROT_WRITE) != 0) + if ((flags & VM_PROT_WRITE) != 0) newpte |= PG_M; if ((prot & VM_PROT_WRITE) != 0) newpte |= PG_RW; KASSERT((newpte & (PG_M | PG_RW)) != PG_M, - ("pmap_enter: access includes VM_PROT_WRITE but prot doesn't")); + ("pmap_enter: flags includes VM_PROT_WRITE but prot doesn't")); if ((prot & VM_PROT_EXECUTE) == 0) newpte |= pg_nx; - if (wired) + if ((flags & PMAP_ENTER_WIRED) != 0) newpte |= PG_W; if (va < VM_MAXUSER_ADDRESS) newpte |= PG_U; @@ -4196,7 +4197,15 @@ * Here if the pte page isn't mapped, or if it has been * deallocated. */ - mpte = _pmap_allocpte(pmap, pmap_pde_pindex(va), &lock); + nosleep = (flags & PMAP_ENTER_NOSLEEP) != 0; + mpte = _pmap_allocpte(pmap, pmap_pde_pindex(va), + nosleep ? NULL : &lock); + if (mpte == NULL && nosleep) { + KASSERT(lock == NULL, ("lock leaked for nosleep")); + PMAP_UNLOCK(pmap); + rw_runlock(&pvh_global_lock); + return (KERN_RESOURCE_SHORTAGE); + } goto retry; } else panic("pmap_enter: invalid page directory va=%#lx", va); @@ -4328,6 +4337,7 @@ rw_wunlock(lock); rw_runlock(&pvh_global_lock); PMAP_UNLOCK(pmap); + return (KERN_SUCCESS); } /* @@ -4693,58 +4703,6 @@ } /* - * Routine: pmap_change_wiring - * Function: Change the wiring attribute for a map/virtual-address - * pair. - * In/out conditions: - * The mapping must already exist in the pmap. - */ -void -pmap_change_wiring(pmap_t pmap, vm_offset_t va, boolean_t wired) -{ - pd_entry_t *pde; - pt_entry_t *pte; - boolean_t pv_lists_locked; - - pv_lists_locked = FALSE; - - /* - * Wiring is not a hardware characteristic so there is no need to - * invalidate TLB. - */ -retry: - PMAP_LOCK(pmap); - pde = pmap_pde(pmap, va); - if ((*pde & PG_PS) != 0) { - if (!wired != ((*pde & PG_W) == 0)) { - if (!pv_lists_locked) { - pv_lists_locked = TRUE; - if (!rw_try_rlock(&pvh_global_lock)) { - PMAP_UNLOCK(pmap); - rw_rlock(&pvh_global_lock); - goto retry; - } - } - if (!pmap_demote_pde(pmap, pde, va)) - panic("pmap_change_wiring: demotion failed"); - } else - goto out; - } - pte = pmap_pde_to_pte(pde, va); - if (wired && (*pte & PG_W) == 0) { - pmap->pm_stats.wired_count++; - atomic_set_long(pte, PG_W); - } else if (!wired && (*pte & PG_W) != 0) { - pmap->pm_stats.wired_count--; - atomic_clear_long(pte, PG_W); - } -out: - if (pv_lists_locked) - rw_runlock(&pvh_global_lock); - PMAP_UNLOCK(pmap); -} - -/* * Clear the wired attribute from the mappings for the specified range of * addresses in the given pmap. Every valid mapping within that range * must have the wired attribute set. In contrast, invalid mappings ==== //depot/projects/opencrypto/sys/amd64/include/sf_buf.h#2 (text+ko) ==== @@ -23,48 +23,29 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: head/sys/amd64/include/sf_buf.h 255289 2013-09-06 05:37:49Z glebius $ + * $FreeBSD: head/sys/amd64/include/sf_buf.h 269577 2014-08-05 09:44:10Z glebius $ */ #ifndef _MACHINE_SF_BUF_H_ #define _MACHINE_SF_BUF_H_ -#include -#include -#include - /* * On this machine, the only purpose for which sf_buf is used is to implement * an opaque pointer required by the machine-independent parts of the kernel. * That pointer references the vm_page that is "mapped" by the sf_buf. The * actual mapping is provided by the direct virtual-to-physical mapping. */ -struct sf_buf; - -static inline struct sf_buf * -sf_buf_alloc(struct vm_page *m, int pri) -{ - - return ((struct sf_buf *)m); -} - -static inline void -sf_buf_free(struct sf_buf *sf) -{ -} - -static __inline vm_offset_t +static inline vm_offset_t sf_buf_kva(struct sf_buf *sf) { return (PHYS_TO_DMAP(VM_PAGE_TO_PHYS((vm_page_t)sf))); } -static __inline vm_page_t +static inline vm_page_t sf_buf_page(struct sf_buf *sf) { return ((vm_page_t)sf); } - #endif /* !_MACHINE_SF_BUF_H_ */ ==== //depot/projects/opencrypto/sys/amd64/vmm/vmm_instruction_emul.c#2 (text+ko) ==== @@ -24,11 +24,11 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: head/sys/amd64/vmm/vmm_instruction_emul.c 269108 2014-07-26 02:51:46Z neel $ + * $FreeBSD: head/sys/amd64/vmm/vmm_instruction_emul.c 269700 2014-08-08 03:49:01Z neel $ */ #include -__FBSDID("$FreeBSD: head/sys/amd64/vmm/vmm_instruction_emul.c 269108 2014-07-26 02:51:46Z neel $"); +__FBSDID("$FreeBSD: head/sys/amd64/vmm/vmm_instruction_emul.c 269700 2014-08-08 03:49:01Z neel $"); #ifdef _KERNEL #include @@ -82,6 +82,10 @@ .op_byte = 0xB6, .op_type = VIE_OP_TYPE_MOVZX, }, + [0xB7] = { + .op_byte = 0xB7, + .op_type = VIE_OP_TYPE_MOVZX, + }, [0xBE] = { .op_byte = 0xBE, .op_type = VIE_OP_TYPE_MOVSX, @@ -505,6 +509,25 @@ /* write the result */ error = vie_update_register(vm, vcpuid, reg, val, size); break; + case 0xB7: + /* + * MOV and zero extend word from mem (ModRM:r/m) to + * reg (ModRM:reg). + * + * 0F B7/r movzx r32, r/m16 + * REX.W + 0F B7/r movzx r64, r/m16 + */ + error = memread(vm, vcpuid, gpa, &val, 2, arg); + if (error) + return (error); + + reg = gpr_map[vie->reg]; + + /* zero-extend word */ + val = (uint16_t)val; + + error = vie_update_register(vm, vcpuid, reg, val, size); + break; case 0xBE: /* * MOV and sign extend byte from mem (ModRM:r/m) to ==== //depot/projects/opencrypto/sys/arm/arm/elf_machdep.c#2 (text+ko) ==== @@ -24,7 +24,7 @@ */ #include -__FBSDID("$FreeBSD: head/sys/arm/arm/elf_machdep.c 264994 2014-04-27 00:46:01Z ian $"); +__FBSDID("$FreeBSD: head/sys/arm/arm/elf_machdep.c 269767 2014-08-09 22:51:26Z imp $"); #include #include @@ -120,6 +120,34 @@ { } +/* + * It is possible for the compiler to emit relocations for unaligned data. + * We handle this situation with these inlines. + */ +#define RELOC_ALIGNED_P(x) \ + (((uintptr_t)(x) & (sizeof(void *) - 1)) == 0) + +static __inline Elf_Addr +load_ptr(Elf_Addr *where) +{ + Elf_Addr res; + + if (RELOC_ALIGNED_P(where)) + return *where; + memcpy(&res, where, sizeof(res)); + return (res); +} + +static __inline void +store_ptr(Elf_Addr *where, Elf_Addr val) +{ + if (RELOC_ALIGNED_P(where)) + *where = val; + else + memcpy(where, &val, sizeof(val)); +} +#undef RELOC_ALIGNED_P + /* Process one elf relocation with addend. */ static int @@ -137,7 +165,7 @@ case ELF_RELOC_REL: rel = (const Elf_Rel *)data; where = (Elf_Addr *) (relocbase + rel->r_offset); - addend = *where; + addend = load_ptr(where); rtype = ELF_R_TYPE(rel->r_info); symidx = ELF_R_SYM(rel->r_info); break; @@ -155,8 +183,8 @@ if (local) { if (rtype == R_ARM_RELATIVE) { /* A + B */ addr = elf_relocaddr(lf, relocbase + addend); - if (*where != addr) - *where = addr; + if (load_ptr(where) != addr) + store_ptr(where, addr); } return (0); } @@ -170,7 +198,7 @@ addr = lookup(lf, symidx, 1); if (addr == 0) return -1; - *where += addr; + store_ptr(where, addr + load_ptr(where)); break; case R_ARM_COPY: /* none */ @@ -185,7 +213,7 @@ case R_ARM_JUMP_SLOT: addr = lookup(lf, symidx, 1); if (addr) { - *where = addr; + store_ptr(where, addr); return (0); } return (-1); ==== //depot/projects/opencrypto/sys/arm/arm/generic_timer.c#2 (text+ko) ==== @@ -35,7 +35,7 @@ */ #include -__FBSDID("$FreeBSD: head/sys/arm/arm/generic_timer.c 264065 2014-04-03 05:48:56Z br $"); +__FBSDID("$FreeBSD: head/sys/arm/arm/generic_timer.c 269605 2014-08-05 18:51:51Z ian $"); #include #include @@ -343,7 +343,8 @@ static devclass_t arm_tmr_devclass; -DRIVER_MODULE(timer, simplebus, arm_tmr_driver, arm_tmr_devclass, 0, 0); +EARLY_DRIVER_MODULE(timer, simplebus, arm_tmr_driver, arm_tmr_devclass, 0, 0, + BUS_PASS_TIMER + BUS_PASS_ORDER_MIDDLE); void DELAY(int usec) ==== //depot/projects/opencrypto/sys/arm/arm/gic.c#2 (text+ko) ==== @@ -32,7 +32,7 @@ */ #include -__FBSDID("$FreeBSD: head/sys/arm/arm/gic.c 267389 2014-06-12 11:41:04Z br $"); +__FBSDID("$FreeBSD: head/sys/arm/arm/gic.c 269605 2014-08-05 18:51:51Z ian $"); #include #include @@ -264,7 +264,8 @@ static devclass_t arm_gic_devclass; -DRIVER_MODULE(gic, simplebus, arm_gic_driver, arm_gic_devclass, 0, 0); +EARLY_DRIVER_MODULE(gic, simplebus, arm_gic_driver, arm_gic_devclass, 0, 0, + BUS_PASS_INTERRUPT + BUS_PASS_ORDER_MIDDLE); static void gic_post_filter(void *arg) ==== //depot/projects/opencrypto/sys/arm/arm/intr.c#2 (text+ko) ==== @@ -37,10 +37,11 @@ */ #include -__FBSDID("$FreeBSD: head/sys/arm/arm/intr.c 266621 2014-05-24 16:21:16Z ian $"); +__FBSDID("$FreeBSD: head/sys/arm/arm/intr.c 269646 2014-08-06 21:27:15Z ian $"); #include #include #include +#include #include #include #include @@ -75,8 +76,8 @@ * assumptions of vmstat(8) and the kdb "show intrcnt" command, the two * consumers of this data. */ -void -arm_intrnames_init(void) +static void +intr_init(void *unused) { int i; @@ -86,6 +87,8 @@ } } +SYSINIT(intr_init, SI_SUB_INTR, SI_ORDER_FIRST, intr_init, NULL); + void arm_setup_irqhandler(const char *name, driver_filter_t *filt, void (*hand)(void*), void *arg, int irq, int flags, void **cookiep) ==== //depot/projects/opencrypto/sys/arm/arm/machdep.c#2 (text+ko) ==== @@ -49,7 +49,7 @@ #include "opt_timer.h" #include -__FBSDID("$FreeBSD: head/sys/arm/arm/machdep.c 266301 2014-05-17 11:27:36Z andrew $"); +__FBSDID("$FreeBSD: head/sys/arm/arm/machdep.c 269646 2014-08-06 21:27:15Z ian $"); #include #include @@ -1278,7 +1278,6 @@ init_proc0(kernelstack.pv_va); - arm_intrnames_init(); arm_vector_init(ARM_VECTORS_HIGH, ARM_VEC_ALL); pmap_bootstrap(freemempos, &kernel_l1pt); msgbufp = (void *)msgbufpv.pv_va; ==== //depot/projects/opencrypto/sys/arm/arm/mpcore_timer.c#2 (text+ko) ==== @@ -43,7 +43,7 @@ */ #include -__FBSDID("$FreeBSD: head/sys/arm/arm/mpcore_timer.c 264094 2014-04-04 00:00:05Z ian $"); +__FBSDID("$FreeBSD: head/sys/arm/arm/mpcore_timer.c 269605 2014-08-05 18:51:51Z ian $"); #include #include @@ -382,7 +382,8 @@ static devclass_t arm_tmr_devclass; -DRIVER_MODULE(mp_tmr, simplebus, arm_tmr_driver, arm_tmr_devclass, 0, 0); +EARLY_DRIVER_MODULE(mp_tmr, simplebus, arm_tmr_driver, arm_tmr_devclass, 0, 0, + BUS_PASS_TIMER + BUS_PASS_ORDER_MIDDLE); /* * Handle a change in clock frequency. The mpcore timer runs at half the CPU ==== //depot/projects/opencrypto/sys/arm/arm/nexus.c#2 (text+ko) ==== @@ -40,7 +40,7 @@ */ #include -__FBSDID("$FreeBSD: head/sys/arm/arm/nexus.c 261513 2014-02-05 14:44:22Z nwhitehorn $"); +__FBSDID("$FreeBSD: head/sys/arm/arm/nexus.c 269606 2014-08-05 19:06:45Z ian $"); #include #include @@ -125,7 +125,12 @@ nexus_methods, 1 /* no softc */ }; +#ifdef ARM_DEVICE_MULTIPASS +EARLY_DRIVER_MODULE(nexus, root, nexus_driver, nexus_devclass, 0, 0, + BUS_PASS_BUS + BUS_PASS_ORDER_EARLY); +#else DRIVER_MODULE(nexus, root, nexus_driver, nexus_devclass, 0, 0); +#endif static int nexus_probe(device_t dev) ==== //depot/projects/opencrypto/sys/arm/arm/pl190.c#2 (text+ko) ==== @@ -26,7 +26,7 @@ #include -__FBSDID("$FreeBSD: head/sys/arm/arm/pl190.c 261410 2014-02-02 19:17:28Z ian $"); +__FBSDID("$FreeBSD: head/sys/arm/arm/pl190.c 269605 2014-08-05 18:51:51Z ian $"); #include #include @@ -152,7 +152,8 @@ static devclass_t pl190_intc_devclass; -DRIVER_MODULE(intc, simplebus, pl190_intc_driver, pl190_intc_devclass, 0, 0); +EARLY_DRIVER_MODULE(intc, simplebus, pl190_intc_driver, pl190_intc_devclass, + 0, 0, BUS_PASS_INTERRUPT + BUS_PASS_ORDER_MIDDLE); int arm_get_next_irq(int last_irq) ==== //depot/projects/opencrypto/sys/arm/arm/pl310.c#2 (text+ko) ==== @@ -29,7 +29,7 @@ */ #include -__FBSDID("$FreeBSD: head/sys/arm/arm/pl310.c 265870 2014-05-11 04:24:57Z ian $"); +__FBSDID("$FreeBSD: head/sys/arm/arm/pl310.c 269598 2014-08-05 17:39:58Z ian $"); #include #include #include @@ -378,6 +378,44 @@ g_l2cache_size = g_way_size * g_ways_assoc; } +/* + * Setup interrupt handling. This is done only if the cache controller is + * disabled, for debugging. We set counters so when a cache event happens we'll + * get interrupted and be warned that something is wrong, because no cache + * events should happen if we're disabled. + */ +static void +pl310_config_intr(void *arg) +{ + struct pl310_softc * sc; + + sc = arg; + + /* activate the interrupt */ + bus_setup_intr(sc->sc_dev, sc->sc_irq_res, INTR_TYPE_MISC | INTR_MPSAFE, + pl310_filter, NULL, sc, &sc->sc_irq_h); + + /* Cache Line Eviction for Counter 0 */ + pl310_write4(sc, PL310_EVENT_COUNTER0_CONF, + EVENT_COUNTER_CONF_INCR | EVENT_COUNTER_CONF_CO); + /* Data Read Request for Counter 1 */ + pl310_write4(sc, PL310_EVENT_COUNTER1_CONF, + EVENT_COUNTER_CONF_INCR | EVENT_COUNTER_CONF_DRREQ); + + /* Enable and clear pending interrupts */ + pl310_write4(sc, PL310_INTR_CLEAR, INTR_MASK_ECNTR); + pl310_write4(sc, PL310_INTR_MASK, INTR_MASK_ALL); + + /* Enable counters and reset C0 and C1 */ + pl310_write4(sc, PL310_EVENT_COUNTER_CTRL, + EVENT_COUNTER_CTRL_ENABLED | + EVENT_COUNTER_CTRL_C0_RESET | + EVENT_COUNTER_CTRL_C1_RESET); + + config_intrhook_disestablish(sc->sc_ich); + free(sc->sc_ich, M_DEVBUF); +} + static int pl310_probe(device_t dev) { @@ -416,10 +454,6 @@ pl310_softc = sc; mtx_init(&sc->sc_mtx, "pl310lock", NULL, MTX_SPIN); - /* activate the interrupt */ - bus_setup_intr(dev, sc->sc_irq_res, INTR_TYPE_MISC | INTR_MPSAFE, - pl310_filter, NULL, sc, &sc->sc_irq_h); - cache_id = pl310_read4(sc, PL310_CACHE_ID); sc->sc_rtl_revision = (cache_id >> CACHE_ID_RELEASE_SHIFT) & CACHE_ID_RELEASE_MASK; @@ -466,28 +500,14 @@ if (bootverbose) pl310_print_config(sc); } else { - /* - * Set counters so when cache event happens we'll get interrupt - * and be warned that something is off. - */ - - /* Cache Line Eviction for Counter 0 */ - pl310_write4(sc, PL310_EVENT_COUNTER0_CONF, - EVENT_COUNTER_CONF_INCR | EVENT_COUNTER_CONF_CO); - /* Data Read Request for Counter 1 */ - pl310_write4(sc, PL310_EVENT_COUNTER1_CONF, - EVENT_COUNTER_CONF_INCR | EVENT_COUNTER_CONF_DRREQ); - - /* Enable and clear pending interrupts */ - pl310_write4(sc, PL310_INTR_CLEAR, INTR_MASK_ECNTR); - pl310_write4(sc, PL310_INTR_MASK, INTR_MASK_ALL); - - /* Enable counters and reset C0 and C1 */ - pl310_write4(sc, PL310_EVENT_COUNTER_CTRL, - EVENT_COUNTER_CTRL_ENABLED | - EVENT_COUNTER_CTRL_C0_RESET | - EVENT_COUNTER_CTRL_C1_RESET); - + malloc(sizeof(*sc->sc_ich), M_DEVBUF, M_WAITOK); + sc->sc_ich->ich_func = pl310_config_intr; + sc->sc_ich->ich_arg = sc; >>> TRUNCATED FOR MAIL (1000 lines) <<<