Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 20 Mar 2015 14:12:05 +0000 (UTC)
From:      Gleb Smirnoff <glebius@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-projects@freebsd.org
Subject:   svn commit: r280281 - in projects/ifnet: . bin/pax bin/ps contrib/compiler-rt/lib/builtins contrib/ofed/libibverbs/examples/build contrib/ofed/librdmacm/examples/build etc/etc.aarch64 lib/atf/libat...
Message-ID:  <201503201412.t2KEC5Zk059837@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: glebius
Date: Fri Mar 20 14:12:04 2015
New Revision: 280281
URL: https://svnweb.freebsd.org/changeset/base/280281

Log:
  Merge head r257698 through r280280.

Added:
  projects/ifnet/etc/etc.aarch64/
     - copied from r280280, head/etc/etc.aarch64/
  projects/ifnet/lib/csu/aarch64/
     - copied from r280280, head/lib/csu/aarch64/
  projects/ifnet/lib/libc/aarch64/
     - copied from r280280, head/lib/libc/aarch64/
  projects/ifnet/lib/libthr/arch/aarch64/
     - copied from r280280, head/lib/libthr/arch/aarch64/
  projects/ifnet/lib/msun/aarch64/
     - copied from r280280, head/lib/msun/aarch64/
  projects/ifnet/sys/dev/drm2/drm_os_freebsd.c
     - copied unchanged from r280280, head/sys/dev/drm2/drm_os_freebsd.c
  projects/ifnet/sys/dev/ixgbe/if_ix.c
     - copied unchanged from r280280, head/sys/dev/ixgbe/if_ix.c
  projects/ifnet/sys/dev/ixgbe/if_ixv.c
     - copied unchanged from r280280, head/sys/dev/ixgbe/if_ixv.c
  projects/ifnet/sys/dev/ixgbe/ix_txrx.c
     - copied unchanged from r280280, head/sys/dev/ixgbe/ix_txrx.c
  projects/ifnet/sys/modules/ix/
     - copied from r280280, head/sys/modules/ix/
  projects/ifnet/sys/modules/ixv/
     - copied from r280280, head/sys/modules/ixv/
  projects/ifnet/sys/x86/iommu/intel_intrmap.c
     - copied unchanged from r280280, head/sys/x86/iommu/intel_intrmap.c
  projects/ifnet/sys/x86/iommu/iommu_intrmap.h
     - copied unchanged from r280280, head/sys/x86/iommu/iommu_intrmap.h
  projects/ifnet/usr.bin/xlint/arch/aarch64/
     - copied from r280280, head/usr.bin/xlint/arch/aarch64/
Deleted:
  projects/ifnet/sys/dev/drm2/drm_drawable.c
  projects/ifnet/sys/dev/drm2/drm_internal.h
  projects/ifnet/sys/dev/drm2/drm_sman.c
  projects/ifnet/sys/dev/drm2/drm_sman.h
  projects/ifnet/sys/dev/drm2/radeon/radeon_atpx_handler.c
  projects/ifnet/sys/dev/ixgbe/ixgbe.c
  projects/ifnet/sys/dev/ixgbe/ixv.c
  projects/ifnet/sys/dev/ixgbe/ixv.h
  projects/ifnet/sys/modules/ixgbe/
Modified:
  projects/ifnet/Makefile
  projects/ifnet/Makefile.inc1
  projects/ifnet/bin/pax/ar_io.c
  projects/ifnet/bin/pax/extern.h
  projects/ifnet/bin/pax/options.c
  projects/ifnet/bin/pax/pax.1
  projects/ifnet/bin/pax/pax.c
  projects/ifnet/bin/ps/print.c
  projects/ifnet/bin/ps/ps.1
  projects/ifnet/contrib/compiler-rt/lib/builtins/fixunssfti.c
  projects/ifnet/contrib/ofed/libibverbs/examples/build/Makefile.inc
  projects/ifnet/contrib/ofed/librdmacm/examples/build/Makefile.inc
  projects/ifnet/lib/atf/libatf-c++/Makefile
  projects/ifnet/lib/libc/gen/nlist.c
  projects/ifnet/sbin/camcontrol/camcontrol.8
  projects/ifnet/sbin/camcontrol/camcontrol.c
  projects/ifnet/sbin/reboot/nextboot.8
  projects/ifnet/share/man/man4/siftr.4
  projects/ifnet/share/man/man4/snd_uaudio.4
  projects/ifnet/share/man/man4/ucom.4
  projects/ifnet/share/mk/bsd.README
  projects/ifnet/share/mk/bsd.endian.mk
  projects/ifnet/share/mk/bsd.lib.mk
  projects/ifnet/share/mk/src.opts.mk
  projects/ifnet/sys/amd64/conf/GENERIC
  projects/ifnet/sys/amd64/include/intr_machdep.h
  projects/ifnet/sys/arm/include/vmparam.h
  projects/ifnet/sys/boot/uboot/fdt/uboot_fdt.c
  projects/ifnet/sys/boot/uboot/lib/glue.h
  projects/ifnet/sys/cam/ata/ata_all.c
  projects/ifnet/sys/cam/scsi/scsi_all.c
  projects/ifnet/sys/cam/scsi/scsi_sa.h
  projects/ifnet/sys/conf/NOTES
  projects/ifnet/sys/conf/files
  projects/ifnet/sys/conf/files.amd64
  projects/ifnet/sys/conf/files.i386
  projects/ifnet/sys/conf/options.arm
  projects/ifnet/sys/contrib/vchiq/interface/vchiq_arm/vchiq_kmod.c
  projects/ifnet/sys/dev/ahci/ahci.c
  projects/ifnet/sys/dev/ahci/ahci.h
  projects/ifnet/sys/dev/ahci/ahci_pci.c
  projects/ifnet/sys/dev/drm2/ati_pcigart.c
  projects/ifnet/sys/dev/drm2/drm.h
  projects/ifnet/sys/dev/drm2/drmP.h
  projects/ifnet/sys/dev/drm2/drm_agpsupport.c
  projects/ifnet/sys/dev/drm2/drm_atomic.h
  projects/ifnet/sys/dev/drm2/drm_auth.c
  projects/ifnet/sys/dev/drm2/drm_buffer.c
  projects/ifnet/sys/dev/drm2/drm_bufs.c
  projects/ifnet/sys/dev/drm2/drm_context.c
  projects/ifnet/sys/dev/drm2/drm_crtc.c
  projects/ifnet/sys/dev/drm2/drm_crtc.h
  projects/ifnet/sys/dev/drm2/drm_crtc_helper.c
  projects/ifnet/sys/dev/drm2/drm_crtc_helper.h
  projects/ifnet/sys/dev/drm2/drm_dma.c
  projects/ifnet/sys/dev/drm2/drm_dp_helper.c
  projects/ifnet/sys/dev/drm2/drm_dp_iic_helper.c
  projects/ifnet/sys/dev/drm2/drm_drv.c
  projects/ifnet/sys/dev/drm2/drm_edid.c
  projects/ifnet/sys/dev/drm2/drm_edid.h
  projects/ifnet/sys/dev/drm2/drm_edid_modes.h
  projects/ifnet/sys/dev/drm2/drm_fb_helper.c
  projects/ifnet/sys/dev/drm2/drm_fb_helper.h
  projects/ifnet/sys/dev/drm2/drm_fops.c
  projects/ifnet/sys/dev/drm2/drm_fourcc.h
  projects/ifnet/sys/dev/drm2/drm_gem.c
  projects/ifnet/sys/dev/drm2/drm_gem_names.c
  projects/ifnet/sys/dev/drm2/drm_global.c
  projects/ifnet/sys/dev/drm2/drm_hashtab.c
  projects/ifnet/sys/dev/drm2/drm_ioc32.c
  projects/ifnet/sys/dev/drm2/drm_ioctl.c
  projects/ifnet/sys/dev/drm2/drm_irq.c
  projects/ifnet/sys/dev/drm2/drm_lock.c
  projects/ifnet/sys/dev/drm2/drm_memory.c
  projects/ifnet/sys/dev/drm2/drm_mm.c
  projects/ifnet/sys/dev/drm2/drm_mm.h
  projects/ifnet/sys/dev/drm2/drm_mode.h
  projects/ifnet/sys/dev/drm2/drm_modes.c
  projects/ifnet/sys/dev/drm2/drm_os_freebsd.h
  projects/ifnet/sys/dev/drm2/drm_pci.c
  projects/ifnet/sys/dev/drm2/drm_pciids.h
  projects/ifnet/sys/dev/drm2/drm_sarea.h
  projects/ifnet/sys/dev/drm2/drm_scatter.c
  projects/ifnet/sys/dev/drm2/drm_stub.c
  projects/ifnet/sys/dev/drm2/drm_sysctl.c
  projects/ifnet/sys/dev/drm2/drm_vm.c
  projects/ifnet/sys/dev/drm2/i915/i915_debug.c
  projects/ifnet/sys/dev/drm2/i915/i915_dma.c
  projects/ifnet/sys/dev/drm2/i915/i915_drm.h
  projects/ifnet/sys/dev/drm2/i915/i915_drv.c
  projects/ifnet/sys/dev/drm2/i915/i915_drv.h
  projects/ifnet/sys/dev/drm2/i915/i915_gem.c
  projects/ifnet/sys/dev/drm2/i915/i915_gem_context.c
  projects/ifnet/sys/dev/drm2/i915/i915_gem_evict.c
  projects/ifnet/sys/dev/drm2/i915/i915_gem_execbuffer.c
  projects/ifnet/sys/dev/drm2/i915/i915_gem_gtt.c
  projects/ifnet/sys/dev/drm2/i915/i915_gem_tiling.c
  projects/ifnet/sys/dev/drm2/i915/i915_ioc32.c
  projects/ifnet/sys/dev/drm2/i915/i915_irq.c
  projects/ifnet/sys/dev/drm2/i915/i915_suspend.c
  projects/ifnet/sys/dev/drm2/i915/intel_crt.c
  projects/ifnet/sys/dev/drm2/i915/intel_display.c
  projects/ifnet/sys/dev/drm2/i915/intel_dp.c
  projects/ifnet/sys/dev/drm2/i915/intel_fb.c
  projects/ifnet/sys/dev/drm2/i915/intel_hdmi.c
  projects/ifnet/sys/dev/drm2/i915/intel_iic.c
  projects/ifnet/sys/dev/drm2/i915/intel_lvds.c
  projects/ifnet/sys/dev/drm2/i915/intel_modes.c
  projects/ifnet/sys/dev/drm2/i915/intel_opregion.c
  projects/ifnet/sys/dev/drm2/i915/intel_overlay.c
  projects/ifnet/sys/dev/drm2/i915/intel_panel.c
  projects/ifnet/sys/dev/drm2/i915/intel_ringbuffer.c
  projects/ifnet/sys/dev/drm2/i915/intel_sdvo.c
  projects/ifnet/sys/dev/drm2/i915/intel_tv.c
  projects/ifnet/sys/dev/drm2/radeon/atom.c
  projects/ifnet/sys/dev/drm2/radeon/atombios_crtc.c
  projects/ifnet/sys/dev/drm2/radeon/atombios_dp.c
  projects/ifnet/sys/dev/drm2/radeon/atombios_encoders.c
  projects/ifnet/sys/dev/drm2/radeon/atombios_i2c.c
  projects/ifnet/sys/dev/drm2/radeon/cayman_blit_shaders.c
  projects/ifnet/sys/dev/drm2/radeon/evergreen.c
  projects/ifnet/sys/dev/drm2/radeon/evergreen_blit_shaders.c
  projects/ifnet/sys/dev/drm2/radeon/evergreen_cs.c
  projects/ifnet/sys/dev/drm2/radeon/evergreen_reg.h
  projects/ifnet/sys/dev/drm2/radeon/ni.c
  projects/ifnet/sys/dev/drm2/radeon/nid.h
  projects/ifnet/sys/dev/drm2/radeon/r100.c
  projects/ifnet/sys/dev/drm2/radeon/r200.c
  projects/ifnet/sys/dev/drm2/radeon/r300.c
  projects/ifnet/sys/dev/drm2/radeon/r300_cmdbuf.c
  projects/ifnet/sys/dev/drm2/radeon/r420.c
  projects/ifnet/sys/dev/drm2/radeon/r500_reg.h
  projects/ifnet/sys/dev/drm2/radeon/r600.c
  projects/ifnet/sys/dev/drm2/radeon/r600_blit.c
  projects/ifnet/sys/dev/drm2/radeon/r600_blit_shaders.c
  projects/ifnet/sys/dev/drm2/radeon/r600_cp.c
  projects/ifnet/sys/dev/drm2/radeon/r600_cs.c
  projects/ifnet/sys/dev/drm2/radeon/r600_hdmi.c
  projects/ifnet/sys/dev/drm2/radeon/r600d.h
  projects/ifnet/sys/dev/drm2/radeon/radeon.h
  projects/ifnet/sys/dev/drm2/radeon/radeon_acpi.c
  projects/ifnet/sys/dev/drm2/radeon/radeon_agp.c
  projects/ifnet/sys/dev/drm2/radeon/radeon_atombios.c
  projects/ifnet/sys/dev/drm2/radeon/radeon_benchmark.c
  projects/ifnet/sys/dev/drm2/radeon/radeon_bios.c
  projects/ifnet/sys/dev/drm2/radeon/radeon_clocks.c
  projects/ifnet/sys/dev/drm2/radeon/radeon_combios.c
  projects/ifnet/sys/dev/drm2/radeon/radeon_connectors.c
  projects/ifnet/sys/dev/drm2/radeon/radeon_cp.c
  projects/ifnet/sys/dev/drm2/radeon/radeon_cs.c
  projects/ifnet/sys/dev/drm2/radeon/radeon_device.c
  projects/ifnet/sys/dev/drm2/radeon/radeon_display.c
  projects/ifnet/sys/dev/drm2/radeon/radeon_drm.h
  projects/ifnet/sys/dev/drm2/radeon/radeon_drv.c
  projects/ifnet/sys/dev/drm2/radeon/radeon_drv.h
  projects/ifnet/sys/dev/drm2/radeon/radeon_fb.c
  projects/ifnet/sys/dev/drm2/radeon/radeon_fence.c
  projects/ifnet/sys/dev/drm2/radeon/radeon_gart.c
  projects/ifnet/sys/dev/drm2/radeon/radeon_gem.c
  projects/ifnet/sys/dev/drm2/radeon/radeon_i2c.c
  projects/ifnet/sys/dev/drm2/radeon/radeon_ioc32.c
  projects/ifnet/sys/dev/drm2/radeon/radeon_irq_kms.c
  projects/ifnet/sys/dev/drm2/radeon/radeon_irq_kms.h
  projects/ifnet/sys/dev/drm2/radeon/radeon_kms.c
  projects/ifnet/sys/dev/drm2/radeon/radeon_legacy_crtc.c
  projects/ifnet/sys/dev/drm2/radeon/radeon_legacy_encoders.c
  projects/ifnet/sys/dev/drm2/radeon/radeon_legacy_tv.c
  projects/ifnet/sys/dev/drm2/radeon/radeon_mem.c
  projects/ifnet/sys/dev/drm2/radeon/radeon_object.c
  projects/ifnet/sys/dev/drm2/radeon/radeon_object.h
  projects/ifnet/sys/dev/drm2/radeon/radeon_pm.c
  projects/ifnet/sys/dev/drm2/radeon/radeon_ring.c
  projects/ifnet/sys/dev/drm2/radeon/radeon_sa.c
  projects/ifnet/sys/dev/drm2/radeon/radeon_semaphore.c
  projects/ifnet/sys/dev/drm2/radeon/radeon_state.c
  projects/ifnet/sys/dev/drm2/radeon/radeon_test.c
  projects/ifnet/sys/dev/drm2/radeon/radeon_ttm.c
  projects/ifnet/sys/dev/drm2/radeon/rs400.c
  projects/ifnet/sys/dev/drm2/radeon/rs600.c
  projects/ifnet/sys/dev/drm2/radeon/rs690.c
  projects/ifnet/sys/dev/drm2/radeon/rv515.c
  projects/ifnet/sys/dev/drm2/radeon/rv770.c
  projects/ifnet/sys/dev/drm2/radeon/si.c
  projects/ifnet/sys/dev/drm2/radeon/si_blit_shaders.c
  projects/ifnet/sys/dev/drm2/radeon/sid.h
  projects/ifnet/sys/dev/drm2/ttm/ttm_bo.c
  projects/ifnet/sys/dev/drm2/ttm/ttm_bo_util.c
  projects/ifnet/sys/dev/drm2/ttm/ttm_bo_vm.c
  projects/ifnet/sys/dev/drm2/ttm/ttm_lock.c
  projects/ifnet/sys/dev/ixgbe/LICENSE
  projects/ifnet/sys/dev/ixgbe/ixgbe.h
  projects/ifnet/sys/dev/ixgbe/ixgbe_82598.c
  projects/ifnet/sys/dev/ixgbe/ixgbe_82598.h
  projects/ifnet/sys/dev/ixgbe/ixgbe_82599.c
  projects/ifnet/sys/dev/ixgbe/ixgbe_82599.h
  projects/ifnet/sys/dev/ixgbe/ixgbe_api.c
  projects/ifnet/sys/dev/ixgbe/ixgbe_api.h
  projects/ifnet/sys/dev/ixgbe/ixgbe_common.c
  projects/ifnet/sys/dev/ixgbe/ixgbe_common.h
  projects/ifnet/sys/dev/ixgbe/ixgbe_dcb.c
  projects/ifnet/sys/dev/ixgbe/ixgbe_dcb.h
  projects/ifnet/sys/dev/ixgbe/ixgbe_dcb_82598.c
  projects/ifnet/sys/dev/ixgbe/ixgbe_dcb_82598.h
  projects/ifnet/sys/dev/ixgbe/ixgbe_dcb_82599.c
  projects/ifnet/sys/dev/ixgbe/ixgbe_dcb_82599.h
  projects/ifnet/sys/dev/ixgbe/ixgbe_mbx.c
  projects/ifnet/sys/dev/ixgbe/ixgbe_mbx.h
  projects/ifnet/sys/dev/ixgbe/ixgbe_phy.c
  projects/ifnet/sys/dev/ixgbe/ixgbe_phy.h
  projects/ifnet/sys/dev/ixgbe/ixgbe_type.h
  projects/ifnet/sys/dev/ixgbe/ixgbe_vf.c
  projects/ifnet/sys/dev/ixgbe/ixgbe_vf.h
  projects/ifnet/sys/dev/ixgbe/ixgbe_x540.c
  projects/ifnet/sys/dev/ixgbe/ixgbe_x540.h
  projects/ifnet/sys/fs/nfsclient/nfs_clbio.c
  projects/ifnet/sys/geom/geom_map.c
  projects/ifnet/sys/i386/include/intr_machdep.h
  projects/ifnet/sys/kern/kern_sysctl.c
  projects/ifnet/sys/kern/subr_sbuf.c
  projects/ifnet/sys/kern/uipc_mbufhash.c
  projects/ifnet/sys/mips/conf/OCTEON1
  projects/ifnet/sys/modules/Makefile
  projects/ifnet/sys/modules/drm2/Makefile
  projects/ifnet/sys/modules/drm2/drm2/Makefile
  projects/ifnet/sys/modules/drm2/radeonkms/Makefile
  projects/ifnet/sys/net/if_vlan.c
  projects/ifnet/sys/net/pfvar.h
  projects/ifnet/sys/netinet/in_rss.c
  projects/ifnet/sys/netinet/siftr.c
  projects/ifnet/sys/netinet6/nd6_nbr.c
  projects/ifnet/sys/netpfil/pf/pf.c
  projects/ifnet/sys/netpfil/pf/pf_ioctl.c
  projects/ifnet/sys/ofed/include/linux/linux_compat.c
  projects/ifnet/sys/ofed/include/linux/timer.h
  projects/ifnet/sys/powerpc/conf/GENERIC64
  projects/ifnet/sys/sys/bitset.h
  projects/ifnet/sys/sys/cdefs.h
  projects/ifnet/sys/sys/libkern.h
  projects/ifnet/sys/sys/mbuf.h
  projects/ifnet/sys/sys/systm.h
  projects/ifnet/sys/sys/types.h
  projects/ifnet/sys/vm/vm_fault.c
  projects/ifnet/sys/vm/vm_pager.c
  projects/ifnet/sys/vm/vm_pager.h
  projects/ifnet/sys/vm/vnode_pager.c
  projects/ifnet/sys/x86/include/apicvar.h
  projects/ifnet/sys/x86/iommu/busdma_dmar.c
  projects/ifnet/sys/x86/iommu/intel_ctx.c
  projects/ifnet/sys/x86/iommu/intel_dmar.h
  projects/ifnet/sys/x86/iommu/intel_drv.c
  projects/ifnet/sys/x86/iommu/intel_fault.c
  projects/ifnet/sys/x86/iommu/intel_gas.c
  projects/ifnet/sys/x86/iommu/intel_idpgtbl.c
  projects/ifnet/sys/x86/iommu/intel_qi.c
  projects/ifnet/sys/x86/iommu/intel_quirks.c
  projects/ifnet/sys/x86/iommu/intel_reg.h
  projects/ifnet/sys/x86/iommu/intel_utils.c
  projects/ifnet/sys/x86/x86/intr_machdep.c
  projects/ifnet/sys/x86/x86/io_apic.c
  projects/ifnet/sys/x86/x86/msi.c
  projects/ifnet/tools/regression/sysvshm/shmtest.c
  projects/ifnet/usr.bin/ldd/ldd.c
  projects/ifnet/usr.bin/mt/mt.c
  projects/ifnet/usr.bin/xlint/lint1/param.h
  projects/ifnet/usr.sbin/bsdinstall/scripts/docsinstall
Directory Properties:
  projects/ifnet/   (props changed)
  projects/ifnet/contrib/compiler-rt/   (props changed)
  projects/ifnet/etc/   (props changed)
  projects/ifnet/lib/libc/   (props changed)
  projects/ifnet/sbin/   (props changed)
  projects/ifnet/share/   (props changed)
  projects/ifnet/share/man/man4/   (props changed)
  projects/ifnet/sys/   (props changed)
  projects/ifnet/sys/boot/   (props changed)
  projects/ifnet/sys/conf/   (props changed)

Modified: projects/ifnet/Makefile
==============================================================================
--- projects/ifnet/Makefile	Fri Mar 20 14:05:17 2015	(r280280)
+++ projects/ifnet/Makefile	Fri Mar 20 14:12:04 2015	(r280281)
@@ -165,10 +165,10 @@ _MAKE=	PATH=${PATH} ${SUB_MAKE} -f Makef
 
 # Guess machine architecture from machine type, and vice versa.
 .if !defined(TARGET_ARCH) && defined(TARGET)
-_TARGET_ARCH=	${TARGET:S/pc98/i386/}
+_TARGET_ARCH=	${TARGET:S/pc98/i386/:S/arm64/aarch64/}
 .elif !defined(TARGET) && defined(TARGET_ARCH) && \
     ${TARGET_ARCH} != ${MACHINE_ARCH}
-_TARGET=		${TARGET_ARCH:C/mips(n32|64)?(el)?/mips/:C/arm(v6)?(eb|hf)?/arm/}
+_TARGET=		${TARGET_ARCH:C/mips(n32|64)?(el)?/mips/:C/arm(v6)?(eb|hf)?/arm/:C/aarch64/arm64/}
 .endif
 .if defined(TARGET) && !defined(_TARGET)
 _TARGET=${TARGET}

Modified: projects/ifnet/Makefile.inc1
==============================================================================
--- projects/ifnet/Makefile.inc1	Fri Mar 20 14:05:17 2015	(r280280)
+++ projects/ifnet/Makefile.inc1	Fri Mar 20 14:12:04 2015	(r280281)
@@ -149,7 +149,7 @@ SRCRELDATE!=	awk '/^\#define[[:space:]]*
 VERSION=	FreeBSD ${REVISION}-${BRANCH:C/-p[0-9]+$//} ${TARGET_ARCH} ${SRCRELDATE}
 .endif
 
-KNOWN_ARCHES?=	amd64 arm armeb/arm armv6/arm armv6hf/arm i386 i386/pc98 mips mipsel/mips mips64el/mips mips64/mips mipsn32el/mips mipsn32/mips powerpc powerpc64/powerpc sparc64
+KNOWN_ARCHES?=	aarch64/arm64 amd64 arm armeb/arm armv6/arm armv6hf/arm i386 i386/pc98 mips mipsel/mips mips64el/mips mips64/mips mipsn32el/mips mipsn32/mips powerpc powerpc64/powerpc sparc64
 .if ${TARGET} == ${TARGET_ARCH}
 _t=		${TARGET}
 .else
@@ -1476,6 +1476,11 @@ _elftctools=	lib/libelftc \
 # cross-build on a FreeBSD 10 host:
 _elftctools+=	usr.bin/addr2line
 .endif
+.elif ${TARGET_ARCH} != ${MACHINE_ARCH} && ${MK_ELFTOOLCHAIN_TOOLS} != "no"
+# If cross-building with an external binutils we still need to build strip for
+# the target (for at least crunchide).
+_elftctools=	lib/libelftc \
+		usr.bin/elfcopy
 .endif
 
 # If an full path to an external cross compiler is given, don't build
@@ -1685,6 +1690,10 @@ gnu/lib/libstdc++__L: lib/msun__L
 gnu/lib/libsupc++__L: gnu/lib/libstdc++__L
 .endif
 
+.if ${MK_LIBCPLUSPLUS} != "no"
+_prebuild_libs+= lib/libc++
+.endif
+
 lib/libgeom__L: lib/libexpat__L
 
 .if ${MK_LIBTHR} != "no"

Modified: projects/ifnet/bin/pax/ar_io.c
==============================================================================
--- projects/ifnet/bin/pax/ar_io.c	Fri Mar 20 14:05:17 2015	(r280280)
+++ projects/ifnet/bin/pax/ar_io.c	Fri Mar 20 14:12:04 2015	(r280281)
@@ -82,7 +82,7 @@ static int wr_trail = 1;		/* trailer was
 static int can_unlnk = 0;		/* do we unlink null archives?  */
 const char *arcname;		  	/* printable name of archive */
 const char *gzip_program;		/* name of gzip program */
-static pid_t zpid = -1;			/* pid of child process */
+static pid_t zpid = -1; 		/* pid of child process */
 
 static int get_phys(void);
 static void ar_start_gzip(int, const char *, int);
@@ -1123,7 +1123,7 @@ ar_next(void)
 	if (sigprocmask(SIG_SETMASK, &o_mask, NULL) < 0)
 		syswarn(0, errno, "Unable to restore signal mask");
 
-	if (done || !wr_trail || strcmp(NM_TAR, argv0) == 0)
+	if (done || !wr_trail || Oflag || strcmp(NM_TAR, argv0) == 0)
 		return(-1);
 
 	tty_prnt("\nATTENTION! %s archive volume change required.\n", argv0);

Modified: projects/ifnet/bin/pax/extern.h
==============================================================================
--- projects/ifnet/bin/pax/extern.h	Fri Mar 20 14:05:17 2015	(r280280)
+++ projects/ifnet/bin/pax/extern.h	Fri Mar 20 14:12:04 2015	(r280281)
@@ -217,6 +217,7 @@ extern int vflag;
 extern int Dflag;
 extern int Hflag;
 extern int Lflag;
+extern int Oflag;
 extern int Xflag;
 extern int Yflag;
 extern int Zflag;

Modified: projects/ifnet/bin/pax/options.c
==============================================================================
--- projects/ifnet/bin/pax/options.c	Fri Mar 20 14:05:17 2015	(r280280)
+++ projects/ifnet/bin/pax/options.c	Fri Mar 20 14:12:04 2015	(r280281)
@@ -194,7 +194,7 @@ pax_options(int argc, char **argv)
 	/*
 	 * process option flags
 	 */
-	while ((c=getopt(argc,argv,"ab:cdf:iklno:p:rs:tuvwx:zB:DE:G:HLPT:U:XYZ"))
+	while ((c=getopt(argc,argv,"ab:cdf:iklno:p:rs:tuvwx:zB:DE:G:HLOPT:U:XYZ"))
 	    != -1) {
 		switch (c) {
 		case 'a':
@@ -447,6 +447,12 @@ pax_options(int argc, char **argv)
 			Lflag = 1;
 			flg |= CLF;
 			break;
+		case 'O':
+			/*
+			 * Force one volume. Non standard option.
+			 */
+			Oflag = 1;
+			break;
 		case 'P':
 			/*
 			 * do NOT follow symlinks (default)
@@ -584,7 +590,7 @@ tar_options(int argc, char **argv)
 {
 	int c;
 	int fstdin = 0;
-	int Oflag = 0;
+	int tar_Oflag = 0;
 	int nincfiles = 0;
 	int incfiles_max = 0;
 	struct incfile {
@@ -664,7 +670,7 @@ tar_options(int argc, char **argv)
 			if (opt_add("write_opt=nodir") < 0)
 				tar_usage();
 		case 'O':
-			Oflag = 1;
+			tar_Oflag = 1;
 			break;
 		case 'p':
 			/*
@@ -820,8 +826,8 @@ tar_options(int argc, char **argv)
 	 * (unless -o specified)
 	 */
 	if (act == ARCHIVE || act == APPND)
-		frmt = &(fsub[Oflag ? F_OTAR : F_TAR]);
-	else if (Oflag) {
+		frmt = &(fsub[tar_Oflag ? F_OTAR : F_TAR]);
+	else if (tar_Oflag) {
 		paxwarn(1, "The -O/-o options are only valid when writing an archive");
 		tar_usage();		/* only valid when writing */
 	}
@@ -1526,25 +1532,25 @@ no_op(void)
 void
 pax_usage(void)
 {
-	(void)fputs("usage: pax [-cdnvz] [-E limit] [-f archive] ", stderr);
+	(void)fputs("usage: pax [-cdnOvz] [-E limit] [-f archive] ", stderr);
 	(void)fputs("[-s replstr] ... [-U user] ...", stderr);
 	(void)fputs("\n	   [-G group] ... ", stderr);
 	(void)fputs("[-T [from_date][,to_date]] ... ", stderr);
 	(void)fputs("[pattern ...]\n", stderr);
-	(void)fputs("       pax -r [-cdiknuvzDYZ] [-E limit] ", stderr);
+	(void)fputs("       pax -r [-cdiknOuvzDYZ] [-E limit] ", stderr);
 	(void)fputs("[-f archive] [-o options] ... \n", stderr);
 	(void)fputs("	   [-p string] ... [-s replstr] ... ", stderr);
 	(void)fputs("[-U user] ... [-G group] ...\n	   ", stderr);
 	(void)fputs("[-T [from_date][,to_date]] ... ", stderr);
 	(void)fputs(" [pattern ...]\n", stderr);
-	(void)fputs("       pax -w [-dituvzHLPX] [-b blocksize] ", stderr);
+	(void)fputs("       pax -w [-dituvzHLOPX] [-b blocksize] ", stderr);
 	(void)fputs("[ [-a] [-f archive] ] [-x format] \n", stderr);
 	(void)fputs("	   [-B bytes] [-s replstr] ... ", stderr);
 	(void)fputs("[-o options] ... [-U user] ...", stderr);
 	(void)fputs("\n	   [-G group] ... ", stderr);
 	(void)fputs("[-T [from_date][,to_date][/[c][m]]] ... ", stderr);
 	(void)fputs("[file ...]\n", stderr);
-	(void)fputs("       pax -r -w [-diklntuvDHLPXYZ] ", stderr);
+	(void)fputs("       pax -r -w [-diklntuvDHLOPXYZ] ", stderr);
 	(void)fputs("[-p string] ... [-s replstr] ...", stderr);
 	(void)fputs("\n	   [-U user] ... [-G group] ... ", stderr);
 	(void)fputs("[-T [from_date][,to_date][/[c][m]]] ... ", stderr);

Modified: projects/ifnet/bin/pax/pax.1
==============================================================================
--- projects/ifnet/bin/pax/pax.1	Fri Mar 20 14:05:17 2015	(r280280)
+++ projects/ifnet/bin/pax/pax.1	Fri Mar 20 14:12:04 2015	(r280281)
@@ -33,7 +33,7 @@
 .\"	@(#)pax.1	8.4 (Berkeley) 4/18/94
 .\" $FreeBSD$
 .\"
-.Dd December 21, 2013
+.Dd March 17, 2015
 .Dt PAX 1
 .Os
 .Sh NAME
@@ -41,7 +41,7 @@
 .Nd read and write file archives and copy directory hierarchies
 .Sh SYNOPSIS
 .Nm
-.Op Fl cdnvz
+.Op Fl cdnvzO
 .Bk -words
 .Op Fl f Ar archive
 .Ek
@@ -68,7 +68,7 @@
 .Op Ar pattern ...\&
 .Nm
 .Fl r
-.Op Fl cdiknuvzDYZ
+.Op Fl cdiknuvzDOYZ
 .Bk -words
 .Op Fl f Ar archive
 .Ek
@@ -104,7 +104,7 @@
 .Op Ar pattern ...\&
 .Nm
 .Fl w
-.Op Fl dituvzHLPX
+.Op Fl dituvzHLOPX
 .Bk -words
 .Op Fl b Ar blocksize
 .Ek
@@ -147,7 +147,7 @@
 .Nm
 .Fl r
 .Fl w
-.Op Fl diklntuvDHLPXYZ
+.Op Fl diklntuvDHLOPXYZ
 .Bk -words
 .Op Fl p Ar string
 .Ar ...\&
@@ -853,6 +853,13 @@ Follow only command line symbolic links 
 system traversal.
 .It Fl L
 Follow all symbolic links to perform a logical file system traversal.
+.It Fl O
+Force the archive to be one volume.
+If a volume ends prematurely,
+.Nm
+will not prompt for a new volume.
+This option can be useful for
+automated tasks where error recovery cannot be performed by a human.
 .It Fl P
 Do not follow symbolic links, perform a physical file system traversal.
 This is the default mode.
@@ -1176,6 +1183,7 @@ The options
 .Fl G ,
 .Fl H ,
 .Fl L ,
+.Fl O ,
 .Fl P ,
 .Fl T ,
 .Fl U ,

Modified: projects/ifnet/bin/pax/pax.c
==============================================================================
--- projects/ifnet/bin/pax/pax.c	Fri Mar 20 14:05:17 2015	(r280280)
+++ projects/ifnet/bin/pax/pax.c	Fri Mar 20 14:12:04 2015	(r280281)
@@ -85,6 +85,7 @@ int	vflag;			/* produce verbose output *
 int	Dflag;			/* same as uflag except inode change time */
 int	Hflag;			/* follow command line symlinks (write only) */
 int	Lflag;			/* follow symlinks when writing */
+int	Oflag;			/* limit to single volume */
 int	Xflag;			/* archive files with same device id only */
 int	Yflag;			/* same as Dflg except after name mode */
 int	Zflag;			/* same as uflg except after name mode */

Modified: projects/ifnet/bin/ps/print.c
==============================================================================
--- projects/ifnet/bin/ps/print.c	Fri Mar 20 14:05:17 2015	(r280280)
+++ projects/ifnet/bin/ps/print.c	Fri Mar 20 14:12:04 2015	(r280281)
@@ -383,7 +383,6 @@ started(KINFO *k, VARENT *ve __unused)
 {
 	time_t then;
 	struct tm *tp;
-	static int use_ampm = -1;
 	size_t buflen = 100;
 	char *buf;
 
@@ -394,16 +393,12 @@ started(KINFO *k, VARENT *ve __unused)
 	if (buf == NULL)
 		errx(1, "malloc failed");
 
-	if (use_ampm < 0)
-		use_ampm = (*nl_langinfo(T_FMT_AMPM) != '\0');
 	then = k->ki_p->ki_start.tv_sec;
 	tp = localtime(&then);
 	if (now - k->ki_p->ki_start.tv_sec < 24 * 3600) {
-		(void)strftime(buf, buflen,
-		    use_ampm ? "%l:%M%p" : "%k:%M  ", tp);
+		(void)strftime(buf, buflen, "%H:%M  ", tp);
 	} else if (now - k->ki_p->ki_start.tv_sec < 7 * 86400) {
-		(void)strftime(buf, buflen,
-		    use_ampm ? "%a%I%p" : "%a%H  ", tp);
+		(void)strftime(buf, buflen, "%a%H  ", tp);
 	} else
 		(void)strftime(buf, buflen, "%e%b%y", tp);
 	return (buf);

Modified: projects/ifnet/bin/ps/ps.1
==============================================================================
--- projects/ifnet/bin/ps/ps.1	Fri Mar 20 14:05:17 2015	(r280280)
+++ projects/ifnet/bin/ps/ps.1	Fri Mar 20 14:12:04 2015	(r280281)
@@ -381,12 +381,12 @@ the real memory (resident set) size of t
 The time the command started.
 If the command started less than 24 hours ago, the start time is
 displayed using the
-.Dq Li %l:ps.1p
+.Dq Li %H:%M
 format described in
 .Xr strftime 3 .
 If the command started less than 7 days ago, the start time is
 displayed using the
-.Dq Li %a6.15p
+.Dq Li %a%H
 format.
 Otherwise, the start time is displayed using the
 .Dq Li %e%b%y

Modified: projects/ifnet/contrib/compiler-rt/lib/builtins/fixunssfti.c
==============================================================================
--- projects/ifnet/contrib/compiler-rt/lib/builtins/fixunssfti.c	Fri Mar 20 14:05:17 2015	(r280280)
+++ projects/ifnet/contrib/compiler-rt/lib/builtins/fixunssfti.c	Fri Mar 20 14:12:04 2015	(r280281)
@@ -12,6 +12,9 @@
  * ===----------------------------------------------------------------------===
  */
 
+#define SINGLE_PRECISION
+#include "fp_lib.h"
+
 #if defined(CRT_HAS_128BIT)
 typedef tu_int fixuint_t;
 #include "fp_fixuint_impl.inc"

Modified: projects/ifnet/contrib/ofed/libibverbs/examples/build/Makefile.inc
==============================================================================
--- projects/ifnet/contrib/ofed/libibverbs/examples/build/Makefile.inc	Fri Mar 20 14:05:17 2015	(r280280)
+++ projects/ifnet/contrib/ofed/libibverbs/examples/build/Makefile.inc	Fri Mar 20 14:12:04 2015	(r280281)
@@ -1,3 +1,5 @@
+BINDIR?= /usr/bin
+
 CFLAGS+= \
 	-I../../../../../../sys/ofed/include \
 	-I../../../../libibverbs/include \

Modified: projects/ifnet/contrib/ofed/librdmacm/examples/build/Makefile.inc
==============================================================================
--- projects/ifnet/contrib/ofed/librdmacm/examples/build/Makefile.inc	Fri Mar 20 14:05:17 2015	(r280280)
+++ projects/ifnet/contrib/ofed/librdmacm/examples/build/Makefile.inc	Fri Mar 20 14:12:04 2015	(r280281)
@@ -1,3 +1,5 @@
+BINDIR?= /usr/bin
+
 IBDIR=../../../..
 
 CFLAGS+= \

Modified: projects/ifnet/lib/atf/libatf-c++/Makefile
==============================================================================
--- projects/ifnet/lib/atf/libatf-c++/Makefile	Fri Mar 20 14:05:17 2015	(r280280)
+++ projects/ifnet/lib/atf/libatf-c++/Makefile	Fri Mar 20 14:12:04 2015	(r280281)
@@ -28,7 +28,7 @@
 .include <src.opts.mk>
 .include <bsd.init.mk>
 
-LIB=		atf-c++
+LIB_CXX=	atf-c++
 PRIVATELIB=	true
 SHLIB_MAJOR=	2
 

Modified: projects/ifnet/lib/libc/gen/nlist.c
==============================================================================
--- projects/ifnet/lib/libc/gen/nlist.c	Fri Mar 20 14:05:17 2015	(r280280)
+++ projects/ifnet/lib/libc/gen/nlist.c	Fri Mar 20 14:12:04 2015	(r280281)
@@ -47,7 +47,10 @@ __FBSDID("$FreeBSD$");
 #include <unistd.h>
 #include "un-namespace.h"
 
+/* There is no a.out support on arm64 */
+#ifndef __aarch64__
 #define _NLIST_DO_AOUT
+#endif
 #define _NLIST_DO_ELF
 
 #ifdef _NLIST_DO_ELF

Modified: projects/ifnet/sbin/camcontrol/camcontrol.8
==============================================================================
--- projects/ifnet/sbin/camcontrol/camcontrol.8	Fri Mar 20 14:05:17 2015	(r280280)
+++ projects/ifnet/sbin/camcontrol/camcontrol.8	Fri Mar 20 14:12:04 2015	(r280281)
@@ -27,7 +27,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd August 31, 2014
+.Dd March 19, 2015
 .Dt CAMCONTROL 8
 .Os
 .Sh NAME
@@ -239,6 +239,16 @@
 .Op device id
 .Op generic args
 .Nm
+.Ic apm
+.Op device id
+.Op generic args
+.Op Fl l Ar level
+.Nm
+.Ic aam
+.Op device id
+.Op generic args
+.Op Fl l Ar level
+.Nm
 .Ic fwdownload
 .Op device id
 .Op generic args
@@ -1291,6 +1301,19 @@ Value 0 disables timer.
 Put ATA device into SLEEP state.
 Note that the only way get device out of
 this state may be reset.
+.It Ic apm
+It optional parameter
+.Pq Fl l
+specified, enables and sets advanced power management level, where
+1 -- minimum power, 127 -- maximum performance with standby,
+128 -- minimum power without standby, 254 -- maximum performance.
+If not specified -- APM is disabled.
+.It Ic aam
+It optional parameter
+.Pq Fl l
+specified, enables and sets automatic acoustic management level, where
+1 -- minimum noise, 254 -- maximum performance.
+If not specified -- AAM is disabled.
 .It Ic security
 Update or report security settings, using an ATA identify command (0xec).
 By default,

Modified: projects/ifnet/sbin/camcontrol/camcontrol.c
==============================================================================
--- projects/ifnet/sbin/camcontrol/camcontrol.c	Fri Mar 20 14:05:17 2015	(r280280)
+++ projects/ifnet/sbin/camcontrol/camcontrol.c	Fri Mar 20 14:12:04 2015	(r280281)
@@ -96,7 +96,9 @@ typedef enum {
 	CAM_CMD_SECURITY	= 0x0000001d,
 	CAM_CMD_HPA		= 0x0000001e,
 	CAM_CMD_SANITIZE	= 0x0000001f,
-	CAM_CMD_PERSIST		= 0x00000020
+	CAM_CMD_PERSIST		= 0x00000020,
+	CAM_CMD_APM		= 0x00000021,
+	CAM_CMD_AAM		= 0x00000022
 } cam_cmdmask;
 
 typedef enum {
@@ -216,6 +218,8 @@ static struct camcontrol_opts option_tab
 	{"idle", CAM_CMD_IDLE, CAM_ARG_NONE, "t:"},
 	{"standby", CAM_CMD_STANDBY, CAM_ARG_NONE, "t:"},
 	{"sleep", CAM_CMD_SLEEP, CAM_ARG_NONE, ""},
+	{"apm", CAM_CMD_APM, CAM_ARG_NONE, "l:"},
+	{"aam", CAM_CMD_AAM, CAM_ARG_NONE, "l:"},
 	{"fwdownload", CAM_CMD_DOWNLOAD_FW, CAM_ARG_NONE, "f:ys"},
 	{"security", CAM_CMD_SECURITY, CAM_ARG_NONE, "d:e:fh:k:l:qs:T:U:y"},
 	{"hpa", CAM_CMD_HPA, CAM_ARG_NONE, "Pflp:qs:U:y"},
@@ -1406,7 +1410,7 @@ atacapprint(struct ata_params *parm)
 		parm->enabled.command2 & ATA_SUPPORT_APM ? "yes" : "no");
 		if (parm->support.command2 & ATA_SUPPORT_APM) {
 			printf("	%d/0x%02X\n",
-			    parm->apm_value, parm->apm_value);
+			    parm->apm_value & 0xff, parm->apm_value & 0xff);
 		} else
 			printf("\n");
 	printf("automatic acoustic management  %s	%s",
@@ -7983,6 +7987,68 @@ atapm(struct cam_device *device, int arg
 	return (retval);
 }
 
+static int
+ataaxm(struct cam_device *device, int argc, char **argv,
+		 char *combinedopt, int retry_count, int timeout)
+{
+	union ccb *ccb;
+	int retval = 0;
+	int l = -1;
+	int c;
+	u_char cmd, sc;
+
+	ccb = cam_getccb(device);
+
+	if (ccb == NULL) {
+		warnx("%s: error allocating ccb", __func__);
+		return (1);
+	}
+
+	while ((c = getopt(argc, argv, combinedopt)) != -1) {
+		switch (c) {
+		case 'l':
+			l = atoi(optarg);
+			break;
+		default:
+			break;
+		}
+	}
+	sc = 0;
+	if (strcmp(argv[1], "apm") == 0) {
+		if (l == -1)
+			cmd = 0x85;
+		else {
+			cmd = 0x05;
+			sc = l;
+		}
+	} else /* aam */ {
+		if (l == -1)
+			cmd = 0xC2;
+		else {
+			cmd = 0x42;
+			sc = l;
+		}
+	}
+
+	retval = ata_do_28bit_cmd(device,
+	    ccb,
+	    /*retries*/retry_count,
+	    /*flags*/CAM_DIR_NONE,
+	    /*protocol*/AP_PROTO_NON_DATA,
+	    /*tag_action*/MSG_SIMPLE_Q_TAG,
+	    /*command*/ATA_SETFEATURES,
+	    /*features*/cmd,
+	    /*lba*/0,
+	    /*sector_count*/sc,
+	    /*data_ptr*/NULL,
+	    /*dxfer_len*/0,
+	    /*timeout*/timeout ? timeout : 30 * 1000,
+	    /*quiet*/1);
+
+	cam_freeccb(ccb);
+	return (retval);
+}
+
 #endif /* MINIMALISTIC */
 
 void
@@ -8040,6 +8106,8 @@ usage(int printlong)
 "        camcontrol idle       [dev_id][generic args][-t time]\n"
 "        camcontrol standby    [dev_id][generic args][-t time]\n"
 "        camcontrol sleep      [dev_id][generic args]\n"
+"        camcontrol apm        [dev_id][generic args][-l level]\n"
+"        camcontrol aam        [dev_id][generic args][-l level]\n"
 "        camcontrol fwdownload [dev_id][generic args] <-f fw_image> [-y][-s]\n"
 "        camcontrol security   [dev_id][generic args]\n"
 "                              <-d pwd | -e pwd | -f | -h pwd | -k pwd>\n"
@@ -8560,6 +8628,11 @@ main(int argc, char **argv)
 			error = atapm(cam_dev, argc, argv,
 				      combinedopt, retry_count, timeout);
 			break;
+		case CAM_CMD_APM:
+		case CAM_CMD_AAM:
+			error = ataaxm(cam_dev, argc, argv,
+				      combinedopt, retry_count, timeout);
+			break;
 		case CAM_CMD_SECURITY:
 			error = atasecurity(cam_dev, retry_count, timeout,
 					    argc, argv, combinedopt);

Modified: projects/ifnet/sbin/reboot/nextboot.8
==============================================================================
--- projects/ifnet/sbin/reboot/nextboot.8	Fri Mar 20 14:05:17 2015	(r280280)
+++ projects/ifnet/sbin/reboot/nextboot.8	Fri Mar 20 14:12:04 2015	(r280281)
@@ -24,7 +24,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd January 31, 2012
+.Dd March 17, 2015
 .Dt NEXTBOOT 8
 .Os
 .Sh NAME
@@ -130,3 +130,9 @@ It is also my first attempt to write in 
 Finally, it does some evil things like writing to the file system before it
 has been checked.
 If it scrambles your file system, do not blame me.
+.Pp
+.Xr loader 8
+is only able to read ZFS, not write to it.
+.Pa nextboot.conf
+will NOT be reset in case of a kernel boot failure.
+

Modified: projects/ifnet/share/man/man4/siftr.4
==============================================================================
--- projects/ifnet/share/man/man4/siftr.4	Fri Mar 20 14:05:17 2015	(r280280)
+++ projects/ifnet/share/man/man4/siftr.4	Fri Mar 20 14:12:04 2015	(r280281)
@@ -30,7 +30,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd November 12, 2010
+.Dd March 18, 2015
 .Dt SIFTR 4
 .Os
 .Sh NAME
@@ -335,6 +335,22 @@ Bytes acknowledged via SACK are not excl
 .It Va 26
 The current number of segments in the reassembly queue.
 .El
+.Bl -tag -offset indent -width Va
+.It Va 27
+Flowid for the connection.
+A caveat: Zero '0' either represents a valid flowid or a default value when it's
+not being set. There is no easy way to differentiate without looking at actual
+network interface card and drivers being used.
+.El
+.Bl -tag -offset indent -width Va
+.It Va 28
+Flow type for the connection.
+Flowtype defines which protocol fields are hashed to produce the flowid. 
+A complete listing is available in
+.Pa sys/mbuf.h
+under
+.Dv M_HASHTYPE_* .
+.El
 .Pp
 The third type of log message is written to the file when the module is disabled
 and ceases collecting data from the running kernel.

Modified: projects/ifnet/share/man/man4/snd_uaudio.4
==============================================================================
--- projects/ifnet/share/man/man4/snd_uaudio.4	Fri Mar 20 14:05:17 2015	(r280280)
+++ projects/ifnet/share/man/man4/snd_uaudio.4	Fri Mar 20 14:12:04 2015	(r280281)
@@ -29,7 +29,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd February 24, 2011
+.Dd March 19, 2015
 .Dt SND_UAUDIO 4
 .Os
 .Sh NAME
@@ -91,12 +91,27 @@ by
 The
 .Tn PCM
 framework in
-.Fx ,
-as of this writing, does not handle device un-registrations in a properly
-abstracted manner, i.e., a detach request is refused by the
-.Tn PCM
-framework if the device is in use.
-It is necessary to allow the device un-registration to complete
-successfully, otherwise the
+.Fx
+only supports synchronous device detach.
+That means all mixer and DSP character devices belonging to a given
+USB audio device must be closed when receiving an error on a DSP read,
+a DSP write or a DSP IOCTL request.
+Else the USB audio driver will wait for this to happen, preventing
+enumeration of new devices on the parenting USB controller.
+.Pp
+Some USB audio devices might refuse to work properly unless the sample
+rate is configured the same for both recording and playback, even if
+only simplex is used.
+See the
+.Va dev.pcm.%d.[play|rec].vchanrate
+sysctls.
+.Pp
+The
 .Tn PCM
-layer will panic.
+framework in
+.Fx
+currently doesn't support the full set of USB audio mixer
+controls.
+Some mixer controls are only available as
+.Va dev.pcm.%d.mixer
+sysctls.

Modified: projects/ifnet/share/man/man4/ucom.4
==============================================================================
--- projects/ifnet/share/man/man4/ucom.4	Fri Mar 20 14:05:17 2015	(r280280)
+++ projects/ifnet/share/man/man4/ucom.4	Fri Mar 20 14:12:04 2015	(r280281)
@@ -29,7 +29,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd October 3, 2014
+.Dd March 11, 2015
 .Dt UCOM 4
 .Os
 .Sh NAME
@@ -63,11 +63,34 @@ This means that normal programs such as
 or
 .Xr ppp 8
 can be used to access the device.
+.Sh Pulse Per Second (PPS) Timing Interface
+The
+.Nm
+driver can capture PPS timing information as defined in RFC 2783.
+The API, accessed via
+.Xr ioctl 8 ,
+is available on the tty device.
+To use the PPS capture feature with
+.Xr ntpd 8 ,
+symlink the tty device to
+.Va /dev/pps0.
 .Pp
 The
-.Va portno
-locater can be used to decide which port to use for devices that have
-multiple external ports.
+.Va hw.usb.ucom.pps_mode
+sysctl configures the PPS capture mode.
+It can be set in
+.Xr loader.conf 5
+or
+.Xr sysctl.conf 5 .
+The following capture modes are available:
+.Bl -tag -compact -offset "mmmm" -width "mmmm"
+.It 0
+Capture disabled (default).
+.It 1
+Capture pulses on the CTS line.
+.It 2
+Capture pulses on the DCD line.
+.El
 .Sh FILES
 .Bl -tag -width ".Pa /dev/cuaU?"
 .It Pa /dev/cuaU?

Modified: projects/ifnet/share/mk/bsd.README
==============================================================================
--- projects/ifnet/share/mk/bsd.README	Fri Mar 20 14:05:17 2015	(r280280)
+++ projects/ifnet/share/mk/bsd.README	Fri Mar 20 14:12:04 2015	(r280281)
@@ -336,6 +336,13 @@ with the current needs of the BSD tree.
 
 It sets/uses the following variables:
 
+LIB		The name of the library to build.
+
+LIB_CXX		The name of the library to build. It also causes
+		<bsd.lib.mk> to link the library with the
+		standard C++ library.  LIB_CXX overrides the value
+		of LIB if LIB is also set.
+
 LIBDIR		Target directory for libraries.
 
 LINTLIBDIR	Target directory for lint libraries.

Modified: projects/ifnet/share/mk/bsd.endian.mk
==============================================================================
--- projects/ifnet/share/mk/bsd.endian.mk	Fri Mar 20 14:05:17 2015	(r280280)
+++ projects/ifnet/share/mk/bsd.endian.mk	Fri Mar 20 14:12:04 2015	(r280281)
@@ -1,6 +1,7 @@
 # $FreeBSD$
 
-.if ${MACHINE_ARCH} == "amd64" || \
+.if ${MACHINE_ARCH} == "aarch64" || \
+    ${MACHINE_ARCH} == "amd64" || \
     ${MACHINE_ARCH} == "i386" || \
     (${MACHINE} == "arm" && ${MACHINE_ARCH:Marm*eb*} == "") || \
     ${MACHINE_ARCH:Mmips*el} != ""

Modified: projects/ifnet/share/mk/bsd.lib.mk
==============================================================================
--- projects/ifnet/share/mk/bsd.lib.mk	Fri Mar 20 14:05:17 2015	(r280280)
+++ projects/ifnet/share/mk/bsd.lib.mk	Fri Mar 20 14:12:04 2015	(r280281)
@@ -4,6 +4,13 @@
 
 .include <bsd.init.mk>
 
+.if defined(LIB_CXX)
+LIB=	${LIB_CXX}
+_LD=	${CXX}
+.else
+_LD=	${CC}
+.endif
+
 # Set up the variables controlling shared libraries.  After this section,
 # SHLIB_NAME will be defined only if we are to create a shared library.
 # SHLIB_LINK will be defined only if we are to create a link to it.
@@ -170,11 +177,7 @@ _LIBS=		lib${LIB}.a
 lib${LIB}.a: ${OBJS} ${STATICOBJS}
 	@${ECHO} building static ${LIB} library
 	@rm -f ${.TARGET}
-.if !defined(NM)
-	@${AR} ${ARFLAGS} ${.TARGET} `lorder ${OBJS} ${STATICOBJS} | tsort -q` ${ARADD}
-.else
 	@${AR} ${ARFLAGS} ${.TARGET} `NM='${NM}' lorder ${OBJS} ${STATICOBJS} | tsort -q` ${ARADD}
-.endif
 	${RANLIB} ${RANLIBFLAGS} ${.TARGET}
 .endif
 
@@ -188,11 +191,7 @@ NOPATH_FILES+=	${POBJS}
 lib${LIB}_p.a: ${POBJS}
 	@${ECHO} building profiled ${LIB} library
 	@rm -f ${.TARGET}
-.if !defined(NM)
-	@${AR} ${ARFLAGS} ${.TARGET} `lorder ${POBJS} | tsort -q` ${ARADD}
-.else
 	@${AR} ${ARFLAGS} ${.TARGET} `NM='${NM}' lorder ${POBJS} | tsort -q` ${ARADD}
-.endif
 	${RANLIB} ${RANLIBFLAGS} ${.TARGET}
 .endif
 
@@ -225,15 +224,9 @@ ${SHLIB_NAME_FULL}: ${SOBJS}
 .if defined(SHLIB_LINK)
 	@${INSTALL_SYMLINK} ${SHLIB_NAME} ${SHLIB_LINK}
 .endif
-.if !defined(NM)
-	@${CC} ${LDFLAGS} ${SSP_CFLAGS} ${SOLINKOPTS} \
-	    -o ${.TARGET} -Wl,-soname,${SONAME} \
-	    `lorder ${SOBJS} | tsort -q` ${LDADD}
-.else
-	@${CC} ${LDFLAGS} ${SSP_CFLAGS} ${SOLINKOPTS} \
+	${_LD} ${LDFLAGS} ${SSP_CFLAGS} ${SOLINKOPTS} \
 	    -o ${.TARGET} -Wl,-soname,${SONAME} \
 	    `NM='${NM}' lorder ${SOBJS} | tsort -q` ${LDADD}
-.endif
 .if ${MK_CTF} != "no"
 	${CTFMERGE} ${CTFFLAGS} -o ${.TARGET} ${SOBJS}
 .endif

Modified: projects/ifnet/share/mk/src.opts.mk
==============================================================================
--- projects/ifnet/share/mk/src.opts.mk	Fri Mar 20 14:05:17 2015	(r280280)
+++ projects/ifnet/share/mk/src.opts.mk	Fri Mar 20 14:12:04 2015	(r280281)
@@ -215,8 +215,8 @@ __TT=${MACHINE}
 # If the compiler is not C++11 capable, disable clang and use gcc instead.
 __DEFAULT_YES_OPTIONS+=GCC GCC_BOOTSTRAP GNUCXX
 __DEFAULT_NO_OPTIONS+=CLANG CLANG_BOOTSTRAP CLANG_FULL CLANG_IS_CC
-.elif ${__T} == "amd64" || ${__T} == "i386"
-# On x86, clang is enabled, and will be installed as the default cc.
+.elif ${__T} == "aarch64" || ${__T} == "amd64" || ${__T} == "i386"
+# On x86 and arm64, clang is enabled, and will be installed as the default cc.
 __DEFAULT_YES_OPTIONS+=CLANG CLANG_BOOTSTRAP CLANG_FULL CLANG_IS_CC
 __DEFAULT_NO_OPTIONS+=GCC GCC_BOOTSTRAP GNUCXX
 .elif ${__TT} == "arm" && ${__T:Marm*eb*} == ""
@@ -233,6 +233,9 @@ __DEFAULT_NO_OPTIONS+=CLANG_BOOTSTRAP CL
 __DEFAULT_YES_OPTIONS+=GCC GCC_BOOTSTRAP GNUCXX
 __DEFAULT_NO_OPTIONS+=CLANG CLANG_BOOTSTRAP CLANG_FULL CLANG_IS_CC
 .endif
+.if ${__T} == "aarch64"
+BROKEN_OPTIONS+=BINUTILS BINUTILS_BOOTSTRAP GDB
+.endif
 
 .include <bsd.mkopt.mk>
 

Modified: projects/ifnet/sys/amd64/conf/GENERIC
==============================================================================
--- projects/ifnet/sys/amd64/conf/GENERIC	Fri Mar 20 14:05:17 2015	(r280280)
+++ projects/ifnet/sys/amd64/conf/GENERIC	Fri Mar 20 14:12:04 2015	(r280281)
@@ -216,7 +216,8 @@ device		bxe			# Broadcom NetXtreme II BC
 device		de			# DEC/Intel DC21x4x (``Tulip'')
 device		em			# Intel PRO/1000 Gigabit Ethernet Family
 device		igb			# Intel PRO/1000 PCIE Server Gigabit Family
-device		ixgbe			# Intel PRO/10GbE PCIE Ethernet Family
+device		ix			# Intel PRO/10GbE PCIE PF Ethernet
+device		ixv			# Intel PRO/10GbE PCIE VF Ethernet
 device		ixl			# Intel XL710 40Gbe PCIE Ethernet
 device		ixlv			# Intel XL710 40Gbe VF PCIE Ethernet
 device		le			# AMD Am7900 LANCE and Am79C9xx PCnet

Modified: projects/ifnet/sys/amd64/include/intr_machdep.h
==============================================================================
--- projects/ifnet/sys/amd64/include/intr_machdep.h	Fri Mar 20 14:05:17 2015	(r280280)
+++ projects/ifnet/sys/amd64/include/intr_machdep.h	Fri Mar 20 14:12:04 2015	(r280281)
@@ -106,6 +106,7 @@ struct pic {
 	int (*pic_config_intr)(struct intsrc *, enum intr_trigger,
 	    enum intr_polarity);
 	int (*pic_assign_cpu)(struct intsrc *, u_int apic_id);
+	void (*pic_reprogram_pin)(struct intsrc *);
 	TAILQ_ENTRY(pic) pics;
 };
 
@@ -172,6 +173,7 @@ int	intr_register_source(struct intsrc *
 int	intr_remove_handler(void *cookie);
 void	intr_resume(bool suspend_cancelled);
 void	intr_suspend(void);
+void	intr_reprogram(void);
 void	intrcnt_add(const char *name, u_long **countp);
 void	nexus_add_irq(u_long irq);
 int	msi_alloc(device_t dev, int count, int maxcount, int *irqs);

Modified: projects/ifnet/sys/arm/include/vmparam.h
==============================================================================
--- projects/ifnet/sys/arm/include/vmparam.h	Fri Mar 20 14:05:17 2015	(r280280)
+++ projects/ifnet/sys/arm/include/vmparam.h	Fri Mar 20 14:12:04 2015	(r280281)
@@ -68,7 +68,9 @@
  * The line between user space and kernel space
  * Mappings >= KERNEL_BASE are constant across all processes
  */
+#ifndef KERNBASE
 #define	KERNBASE		0xc0000000
+#endif
 
 /*
  * max number of non-contig chunks of physical RAM you can have

Modified: projects/ifnet/sys/boot/uboot/fdt/uboot_fdt.c
==============================================================================
--- projects/ifnet/sys/boot/uboot/fdt/uboot_fdt.c	Fri Mar 20 14:05:17 2015	(r280280)
+++ projects/ifnet/sys/boot/uboot/fdt/uboot_fdt.c	Fri Mar 20 14:12:04 2015	(r280281)
@@ -88,7 +88,7 @@ fdt_platform_load_dtb(void)
 void
 fdt_platform_fixups(void)
 {
-	struct fdt_mem_region regions[3];
+	static struct fdt_mem_region regions[UB_MAX_MR];
 	const char *env, *str;
 	char *end, *ethstr;
 	int eth_no, i, len, n;
@@ -165,17 +165,15 @@ fdt_platform_fixups(void)
 	/* Modify cpu(s) and bus clock frequenties in /cpus node [Hz] */
 	fdt_fixup_cpubusfreqs(si->clk_cpu, si->clk_bus);
 
-	/* Copy the data into a useful form */
-	for (i = 0; i < si->mr_no; i++) {
-		if (i > nitems(regions)) {
-			i = nitems(regions);
-			break;
+	/* Extract the DRAM regions into fdt_mem_region format. */
+	for (i = 0, n = 0; i < si->mr_no && n < nitems(regions); i++) {
+		if (si->mr[i].flags == MR_ATTR_DRAM) {
+			regions[n].start = si->mr[i].start;
+			regions[n].size = si->mr[i].size;
+			n++;
 		}
-
-		regions[i].start = si->mr[i].start;
-		regions[i].size = si->mr[i].size;
 	}
 
 	/* Fixup memory regions */
-	fdt_fixup_memory(regions, i);
+	fdt_fixup_memory(regions, n);
 }

Modified: projects/ifnet/sys/boot/uboot/lib/glue.h
==============================================================================
--- projects/ifnet/sys/boot/uboot/lib/glue.h	Fri Mar 20 14:05:17 2015	(r280280)
+++ projects/ifnet/sys/boot/uboot/lib/glue.h	Fri Mar 20 14:12:04 2015	(r280281)
@@ -40,7 +40,7 @@ void *syscall_ptr;
 
 int api_search_sig(struct api_signature **sig);
 
-#define	UB_MAX_MR	5		/* max mem regions number */
+#define	UB_MAX_MR	16		/* max mem regions number */
 #define	UB_MAX_DEV	6		/* max devices number */
 
 /*

Modified: projects/ifnet/sys/cam/ata/ata_all.c
==============================================================================
--- projects/ifnet/sys/cam/ata/ata_all.c	Fri Mar 20 14:05:17 2015	(r280280)
+++ projects/ifnet/sys/cam/ata/ata_all.c	Fri Mar 20 14:12:04 2015	(r280281)
@@ -275,28 +275,38 @@ ata_res_sbuf(struct ccb_ataio *ataio, st
 void
 ata_print_ident(struct ata_params *ident_data)
 {
-	char product[48], revision[16];
+	const char *proto;
+	char product[48], revision[16], ata[12], sata[12];
 
 	cam_strvis(product, ident_data->model, sizeof(ident_data->model),
 		   sizeof(product));
 	cam_strvis(revision, ident_data->revision, sizeof(ident_data->revision),
 		   sizeof(revision));
-	printf("<%s %s> %s-%d",
-	    product, revision,
-	    (ident_data->config == ATA_PROTO_CFA) ? "CFA" :
-	    (ident_data->config & ATA_PROTO_ATAPI) ? "ATAPI" : "ATA",
-	    ata_version(ident_data->version_major));
+	proto = (ident_data->config == ATA_PROTO_CFA) ? "CFA" :
+		(ident_data->config & ATA_PROTO_ATAPI) ? "ATAPI" : "ATA";
+	if (ata_version(ident_data->version_major) == 0) {
+		snprintf(ata, sizeof(ata), "%s", proto);
+	} else if (ata_version(ident_data->version_major) <= 7) {
+		snprintf(ata, sizeof(ata), "%s-%d", proto,
+		    ata_version(ident_data->version_major));
+	} else if (ata_version(ident_data->version_major) == 8) {
+		snprintf(ata, sizeof(ata), "%s8-ACS", proto);
+	} else {
+		snprintf(ata, sizeof(ata), "ACS-%d %s",
+		    ata_version(ident_data->version_major) - 7, proto);
+	}
 	if (ident_data->satacapabilities && ident_data->satacapabilities != 0xffff) {
 		if (ident_data->satacapabilities & ATA_SATA_GEN3)
-			printf(" SATA 3.x");
+			snprintf(sata, sizeof(sata), " SATA 3.x");
 		else if (ident_data->satacapabilities & ATA_SATA_GEN2)
-			printf(" SATA 2.x");
+			snprintf(sata, sizeof(sata), " SATA 2.x");
 		else if (ident_data->satacapabilities & ATA_SATA_GEN1)
-			printf(" SATA 1.x");
+			snprintf(sata, sizeof(sata), " SATA 1.x");
 		else
-			printf(" SATA");
-	}
-	printf(" device\n");
+			snprintf(sata, sizeof(sata), " SATA");
+	} else
+		sata[0] = 0;
+	printf("<%s %s> %s%s device\n", product, revision, ata, sata);
 }
 
 void

Modified: projects/ifnet/sys/cam/scsi/scsi_all.c
==============================================================================
--- projects/ifnet/sys/cam/scsi/scsi_all.c	Fri Mar 20 14:05:17 2015	(r280280)
+++ projects/ifnet/sys/cam/scsi/scsi_all.c	Fri Mar 20 14:12:04 2015	(r280281)
@@ -5149,7 +5149,7 @@ scsi_print_inquiry(struct scsi_inquiry_d
 {
 	u_int8_t type;
 	char *dtype, *qtype;
-	char vendor[16], product[48], revision[16], rstr[4];
+	char vendor[16], product[48], revision[16], rstr[12];
 
 	type = SID_TYPE(inq_data);
 
@@ -5157,7 +5157,7 @@ scsi_print_inquiry(struct scsi_inquiry_d
 	 * Figure out basic device type and qualifier.
 	 */
 	if (SID_QUAL_IS_VENDOR_UNIQUE(inq_data)) {
-		qtype = "(vendor-unique qualifier)";
+		qtype = " (vendor-unique qualifier)";
 	} else {
 		switch (SID_QUAL(inq_data)) {
 		case SID_QUAL_LU_CONNECTED:
@@ -5165,15 +5165,15 @@ scsi_print_inquiry(struct scsi_inquiry_d
 			break;
 
 		case SID_QUAL_LU_OFFLINE:
-			qtype = "(offline)";
+			qtype = " (offline)";
 			break;
 
 		case SID_QUAL_RSVD:
-			qtype = "(reserved qualifier)";
+			qtype = " (reserved qualifier)";
 			break;
 		default:
 		case SID_QUAL_BAD_LU:
-			qtype = "(LUN not supported)";
+			qtype = " (LUN not supported)";
 			break;
 		}
 	}
@@ -5242,11 +5242,16 @@ scsi_print_inquiry(struct scsi_inquiry_d
 	cam_strvis(revision, inq_data->revision, sizeof(inq_data->revision),
 		   sizeof(revision));
 
-	if (SID_ANSI_REV(inq_data) == SCSI_REV_CCS)
-		bcopy("CCS", rstr, 4);
-	else
-		snprintf(rstr, sizeof (rstr), "%d", SID_ANSI_REV(inq_data));
-	printf("<%s %s %s> %s %s SCSI-%s device %s\n",
+	if (SID_ANSI_REV(inq_data) == SCSI_REV_0)
+		snprintf(rstr, sizeof(rstr), "SCSI");
+	else if (SID_ANSI_REV(inq_data) <= SCSI_REV_SPC) {
+		snprintf(rstr, sizeof(rstr), "SCSI-%d",
+		    SID_ANSI_REV(inq_data));
+	} else {
+		snprintf(rstr, sizeof(rstr), "SPC-%d SCSI",
+		    SID_ANSI_REV(inq_data) - 2);
+	}
+	printf("<%s %s %s> %s %s %s device%s\n",
 	       vendor, product, revision,
 	       SID_IS_REMOVABLE(inq_data) ? "Removable" : "Fixed",
 	       dtype, rstr, qtype);

Modified: projects/ifnet/sys/cam/scsi/scsi_sa.h
==============================================================================
--- projects/ifnet/sys/cam/scsi/scsi_sa.h	Fri Mar 20 14:05:17 2015	(r280280)
+++ projects/ifnet/sys/cam/scsi/scsi_sa.h	Fri Mar 20 14:12:04 2015	(r280281)
@@ -477,7 +477,7 @@ struct scsi_medium_type_data {
 	u_int8_t length[2];
 #define	SMTD_DEFAULT_LENGTH	52
 	u_int8_t num_density_codes;
-	u_int8_t primary_density_codes[8];
+	u_int8_t primary_density_codes[9];
 	u_int8_t media_width[2];
 	u_int8_t medium_length[2];
 	u_int8_t reserved2[2];

Modified: projects/ifnet/sys/conf/NOTES
==============================================================================
--- projects/ifnet/sys/conf/NOTES	Fri Mar 20 14:05:17 2015	(r280280)
+++ projects/ifnet/sys/conf/NOTES	Fri Mar 20 14:12:04 2015	(r280281)
@@ -2100,7 +2100,8 @@ device		de		# DEC/Intel DC21x4x (``Tulip
 device		em		# Intel Pro/1000 Gigabit Ethernet
 device		igb		# Intel Pro/1000 PCIE Gigabit Ethernet
 device		ixgb		# Intel Pro/10Gbe PCI-X Ethernet
-device		ixgbe		# Intel Pro/10Gbe PCIE Ethernet
+device		ix		# Intel Pro/10Gbe PCIE Ethernet
+device		ixv		# Intel Pro/10Gbe PCIE Ethernet VF
 device		le		# AMD Am7900 LANCE and Am79C9xx PCnet
 device		mxge		# Myricom Myri-10G 10GbE NIC
 device		nxge		# Neterion Xframe 10GbE Server/Storage Adapter

Modified: projects/ifnet/sys/conf/files
==============================================================================
--- projects/ifnet/sys/conf/files	Fri Mar 20 14:05:17 2015	(r280280)
+++ projects/ifnet/sys/conf/files	Fri Mar 20 14:12:04 2015	(r280281)
@@ -1769,31 +1769,33 @@ iwn6050.fw			optional iwn6050fw | iwnfw	
 dev/ixgb/if_ixgb.c		optional ixgb
 dev/ixgb/ixgb_ee.c		optional ixgb
 dev/ixgb/ixgb_hw.c		optional ixgb
-dev/ixgbe/ixgbe.c		optional ixgbe inet \
+dev/ixgbe/if_ix.c		optional ix inet \

*** DIFF OUTPUT TRUNCATED AT 1000 LINES ***



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201503201412.t2KEC5Zk059837>