svn commit: r250397 - in user/attilio/vmcontention: cddl/lib/drti contrib/bsnmp contrib/gcc/config/i386 gnu/usr.bin/cc/include lib/libprocstat lib/libusb release/picobsd/build sbin/etherswitchcfg s...

Attilio Rao attilio at FreeBSD.org
Thu May 9 00:33:01 UTC 2013


Author: attilio
Date: Thu May  9 00:14:24 2013
New Revision: 250397
URL: http://svnweb.freebsd.org/changeset/base/250397

Log:
  MFC

Added:
  user/attilio/vmcontention/share/man/man4/acpi_rapidstart.4
     - copied unchanged from r250395, head/share/man/man4/acpi_rapidstart.4
  user/attilio/vmcontention/sys/dev/acpi_support/acpi_rapidstart.c
     - copied unchanged from r250395, head/sys/dev/acpi_support/acpi_rapidstart.c
  user/attilio/vmcontention/sys/dev/etherswitch/ip17x/
     - copied from r250395, head/sys/dev/etherswitch/ip17x/
  user/attilio/vmcontention/sys/modules/acpi/acpi_rapidstart/
     - copied from r250395, head/sys/modules/acpi/acpi_rapidstart/
  user/attilio/vmcontention/sys/sys/_bitset.h
     - copied unchanged from r250395, head/sys/sys/_bitset.h
  user/attilio/vmcontention/sys/sys/bitset.h
     - copied unchanged from r250395, head/sys/sys/bitset.h
  user/attilio/vmcontention/usr.sbin/bsdconfig/packages/
     - copied from r250395, head/usr.sbin/bsdconfig/packages/
  user/attilio/vmcontention/usr.sbin/bsdconfig/share/packages/
     - copied from r250395, head/usr.sbin/bsdconfig/share/packages/
  user/attilio/vmcontention/usr.sbin/bsnmpd/modules/snmp_hast/
     - copied from r250395, head/usr.sbin/bsnmpd/modules/snmp_hast/
Modified:
  user/attilio/vmcontention/cddl/lib/drti/Makefile
  user/attilio/vmcontention/contrib/bsnmp/oid-list
  user/attilio/vmcontention/contrib/gcc/config/i386/tmmintrin.h
  user/attilio/vmcontention/gnu/usr.bin/cc/include/Makefile
  user/attilio/vmcontention/lib/libprocstat/libprocstat.c
  user/attilio/vmcontention/lib/libusb/libusb.3
  user/attilio/vmcontention/lib/libusb/libusb.h
  user/attilio/vmcontention/lib/libusb/libusb10.c
  user/attilio/vmcontention/lib/libusb/libusb10_io.c
  user/attilio/vmcontention/release/picobsd/build/picobsd
  user/attilio/vmcontention/sbin/etherswitchcfg/etherswitchcfg.8
  user/attilio/vmcontention/sbin/etherswitchcfg/etherswitchcfg.c
  user/attilio/vmcontention/sbin/growfs/growfs.c
  user/attilio/vmcontention/sbin/iscontrol/auth_subr.c
  user/attilio/vmcontention/sbin/iscontrol/fsm.c
  user/attilio/vmcontention/sbin/iscontrol/login.c
  user/attilio/vmcontention/sbin/iscontrol/misc.c
  user/attilio/vmcontention/sbin/ping6/ping6.8
  user/attilio/vmcontention/share/man/man4/igb.4
  user/attilio/vmcontention/share/misc/bsd-family-tree
  user/attilio/vmcontention/sys/amd64/include/param.h
  user/attilio/vmcontention/sys/amd64/include/vmparam.h
  user/attilio/vmcontention/sys/arm/arm/cpufunc_asm_pj4b.S
  user/attilio/vmcontention/sys/arm/arm/locore.S
  user/attilio/vmcontention/sys/arm/arm/mp_machdep.c
  user/attilio/vmcontention/sys/arm/arm/pmap-v6.c
  user/attilio/vmcontention/sys/arm/freescale/imx/bus_space.c
  user/attilio/vmcontention/sys/arm/freescale/imx/common.c
  user/attilio/vmcontention/sys/arm/freescale/imx/console.c
  user/attilio/vmcontention/sys/arm/freescale/imx/i2c.c
  user/attilio/vmcontention/sys/arm/freescale/imx/imx51_ccm.c
  user/attilio/vmcontention/sys/arm/freescale/imx/imx51_ccmreg.h
  user/attilio/vmcontention/sys/arm/freescale/imx/imx51_ccmvar.h
  user/attilio/vmcontention/sys/arm/freescale/imx/imx51_dpllreg.h
  user/attilio/vmcontention/sys/arm/freescale/imx/imx51_gpio.c
  user/attilio/vmcontention/sys/arm/freescale/imx/imx51_iomux.c
  user/attilio/vmcontention/sys/arm/freescale/imx/imx51_iomuxreg.h
  user/attilio/vmcontention/sys/arm/freescale/imx/imx51_iomuxvar.h
  user/attilio/vmcontention/sys/arm/freescale/imx/imx51_ipuv3.c
  user/attilio/vmcontention/sys/arm/freescale/imx/imx51_ipuv3reg.h
  user/attilio/vmcontention/sys/arm/freescale/imx/imx51_sdmareg.h
  user/attilio/vmcontention/sys/arm/freescale/imx/imx51_ssireg.h
  user/attilio/vmcontention/sys/arm/freescale/imx/imx51_tzicreg.h
  user/attilio/vmcontention/sys/arm/freescale/imx/imx_gpt.c
  user/attilio/vmcontention/sys/arm/freescale/imx/imx_gptreg.h
  user/attilio/vmcontention/sys/arm/freescale/imx/imx_gptvar.h
  user/attilio/vmcontention/sys/arm/freescale/imx/imx_machdep.c
  user/attilio/vmcontention/sys/arm/freescale/imx/imx_wdog.c
  user/attilio/vmcontention/sys/arm/freescale/imx/imx_wdogreg.h
  user/attilio/vmcontention/sys/arm/freescale/imx/tzic.c
  user/attilio/vmcontention/sys/arm/include/param.h
  user/attilio/vmcontention/sys/arm/include/pmap.h
  user/attilio/vmcontention/sys/arm/include/vmparam.h
  user/attilio/vmcontention/sys/arm/mv/armadaxp/armadaxp.c
  user/attilio/vmcontention/sys/arm/mv/armadaxp/armadaxp_mp.c
  user/attilio/vmcontention/sys/arm/mv/armadaxp/std.armadaxp
  user/attilio/vmcontention/sys/arm/mv/common.c
  user/attilio/vmcontention/sys/arm/mv/mv_machdep.c
  user/attilio/vmcontention/sys/arm/mv/mvvar.h
  user/attilio/vmcontention/sys/arm/mv/mvwin.h
  user/attilio/vmcontention/sys/boot/fdt/dts/db78460.dts
  user/attilio/vmcontention/sys/boot/pc98/libpc98/biosdisk.c
  user/attilio/vmcontention/sys/cam/ata/ata_xpt.c
  user/attilio/vmcontention/sys/conf/NOTES
  user/attilio/vmcontention/sys/conf/files
  user/attilio/vmcontention/sys/conf/options
  user/attilio/vmcontention/sys/contrib/dev/acpica/components/namespace/nsinit.c
  user/attilio/vmcontention/sys/dev/ath/ath_hal/ah_desc.h
  user/attilio/vmcontention/sys/dev/ath/ath_hal/ar5416/ar5416_recv.c
  user/attilio/vmcontention/sys/dev/ath/ath_hal/ar5416/ar5416desc.h
  user/attilio/vmcontention/sys/dev/ath/if_ath.c
  user/attilio/vmcontention/sys/dev/ath/if_ath_rx.c
  user/attilio/vmcontention/sys/dev/ath/if_ath_sysctl.c
  user/attilio/vmcontention/sys/dev/ath/if_ath_tx.c
  user/attilio/vmcontention/sys/dev/ath/if_athioctl.h
  user/attilio/vmcontention/sys/dev/ath/if_athvar.h
  user/attilio/vmcontention/sys/dev/bwn/if_bwn.c
  user/attilio/vmcontention/sys/dev/cesa/cesa.c
  user/attilio/vmcontention/sys/dev/cesa/cesa.h
  user/attilio/vmcontention/sys/dev/etherswitch/arswitch/arswitch.c
  user/attilio/vmcontention/sys/dev/etherswitch/etherswitch.c
  user/attilio/vmcontention/sys/dev/etherswitch/etherswitch.h
  user/attilio/vmcontention/sys/dev/etherswitch/etherswitch_if.m
  user/attilio/vmcontention/sys/dev/etherswitch/ukswitch/ukswitch.c
  user/attilio/vmcontention/sys/dev/qlxgb/README.txt
  user/attilio/vmcontention/sys/dev/qlxgb/qla_dbg.c
  user/attilio/vmcontention/sys/dev/qlxgb/qla_dbg.h
  user/attilio/vmcontention/sys/dev/qlxgb/qla_def.h
  user/attilio/vmcontention/sys/dev/qlxgb/qla_glbl.h
  user/attilio/vmcontention/sys/dev/qlxgb/qla_hw.c
  user/attilio/vmcontention/sys/dev/qlxgb/qla_hw.h
  user/attilio/vmcontention/sys/dev/qlxgb/qla_inline.h
  user/attilio/vmcontention/sys/dev/qlxgb/qla_ioctl.c
  user/attilio/vmcontention/sys/dev/qlxgb/qla_ioctl.h
  user/attilio/vmcontention/sys/dev/qlxgb/qla_isr.c
  user/attilio/vmcontention/sys/dev/qlxgb/qla_misc.c
  user/attilio/vmcontention/sys/dev/qlxgb/qla_os.c
  user/attilio/vmcontention/sys/dev/qlxgb/qla_os.h
  user/attilio/vmcontention/sys/dev/qlxgb/qla_reg.h
  user/attilio/vmcontention/sys/dev/qlxgb/qla_ver.h
  user/attilio/vmcontention/sys/dev/sound/pci/envy24ht.c
  user/attilio/vmcontention/sys/dev/sound/pci/envy24ht.h
  user/attilio/vmcontention/sys/fs/tmpfs/tmpfs_vnops.c
  user/attilio/vmcontention/sys/i386/include/param.h
  user/attilio/vmcontention/sys/i386/include/vmparam.h
  user/attilio/vmcontention/sys/ia64/include/param.h
  user/attilio/vmcontention/sys/ia64/include/vmparam.h
  user/attilio/vmcontention/sys/kern/uipc_socket.c
  user/attilio/vmcontention/sys/kern/vfs_cluster.c
  user/attilio/vmcontention/sys/mips/conf/ROUTERSTATION
  user/attilio/vmcontention/sys/mips/conf/ROUTERSTATION.hints
  user/attilio/vmcontention/sys/mips/include/param.h
  user/attilio/vmcontention/sys/mips/include/vmparam.h
  user/attilio/vmcontention/sys/net/if.c
  user/attilio/vmcontention/sys/net/if_llatbl.c
  user/attilio/vmcontention/sys/net/if_llatbl.h
  user/attilio/vmcontention/sys/net/if_var.h
  user/attilio/vmcontention/sys/netinet/in_pcb.h
  user/attilio/vmcontention/sys/netinet/in_var.h
  user/attilio/vmcontention/sys/netinet/ip_id.c
  user/attilio/vmcontention/sys/netinet/ip_input.c
  user/attilio/vmcontention/sys/netinet/tcp_subr.c
  user/attilio/vmcontention/sys/netpfil/pf/if_pfsync.c
  user/attilio/vmcontention/sys/netpfil/pf/pf.c
  user/attilio/vmcontention/sys/ofed/include/linux/workqueue.h
  user/attilio/vmcontention/sys/powerpc/include/param.h
  user/attilio/vmcontention/sys/powerpc/include/vmparam.h
  user/attilio/vmcontention/sys/powerpc/powermac/smu.c
  user/attilio/vmcontention/sys/sparc64/include/param.h
  user/attilio/vmcontention/sys/sparc64/include/vmparam.h
  user/attilio/vmcontention/sys/sys/_cpuset.h
  user/attilio/vmcontention/sys/sys/cpuset.h
  user/attilio/vmcontention/sys/sys/socketvar.h
  user/attilio/vmcontention/sys/vm/vm_phys.c
  user/attilio/vmcontention/sys/vm/vm_radix.c
  user/attilio/vmcontention/sys/x86/acpica/srat.c
  user/attilio/vmcontention/usr.sbin/bsdconfig/Makefile
  user/attilio/vmcontention/usr.sbin/bsdconfig/dot/dot
  user/attilio/vmcontention/usr.sbin/bsdconfig/include/messages.subr
  user/attilio/vmcontention/usr.sbin/bsdconfig/include/options.hlp
  user/attilio/vmcontention/usr.sbin/bsdconfig/share/Makefile
  user/attilio/vmcontention/usr.sbin/bsdconfig/share/common.subr
  user/attilio/vmcontention/usr.sbin/bsdconfig/share/media/options.subr
  user/attilio/vmcontention/usr.sbin/bsdconfig/share/script.subr
  user/attilio/vmcontention/usr.sbin/bsdconfig/share/variable.subr
  user/attilio/vmcontention/usr.sbin/bsdconfig/startup/rcdelete
  user/attilio/vmcontention/usr.sbin/pmcannotate/pmcannotate.c
  user/attilio/vmcontention/usr.sbin/rtadvd/rrenum.c
Directory Properties:
  user/attilio/vmcontention/   (props changed)
  user/attilio/vmcontention/cddl/   (props changed)
  user/attilio/vmcontention/contrib/gcc/   (props changed)
  user/attilio/vmcontention/sbin/   (props changed)
  user/attilio/vmcontention/share/man/man4/   (props changed)
  user/attilio/vmcontention/sys/   (props changed)
  user/attilio/vmcontention/sys/boot/   (props changed)
  user/attilio/vmcontention/sys/conf/   (props changed)
  user/attilio/vmcontention/sys/contrib/dev/acpica/   (props changed)
  user/attilio/vmcontention/sys/contrib/dev/acpica/components/namespace/   (props changed)
  user/attilio/vmcontention/usr.sbin/rtadvd/   (props changed)

Modified: user/attilio/vmcontention/cddl/lib/drti/Makefile
==============================================================================
--- user/attilio/vmcontention/cddl/lib/drti/Makefile	Thu May  9 00:14:18 2013	(r250396)
+++ user/attilio/vmcontention/cddl/lib/drti/Makefile	Thu May  9 00:14:24 2013	(r250397)
@@ -9,6 +9,8 @@ FILESGRP=	${LIBGRP}
 FILESMODE=	${LIBMODE}
 FILESDIR=	${LIBDIR}/dtrace
 CLEANFILES=	${FILES}
+LIB=		drti-dummy
+INTERNALLIB=
 
 CFLAGS+=	-I${.CURDIR}/../../../sys/cddl/compat/opensolaris \
 		-I${.CURDIR}/../../../cddl/compat/opensolaris/include \
@@ -18,4 +20,10 @@ CFLAGS+=	-I${.CURDIR}/../../../sys/cddl/
 		-I${OPENSOLARIS_SYS_DISTDIR}/uts/common \
 		-DPIC ${PICFLAG}
 
+.if make(install) && defined(LIBRARIES_ONLY)
+install:
+	${INSTALL} -o ${FILESOWN} -g ${FILESGRP} -m ${FILESMODE} \
+	    ${FILES} ${DESTDIR}${FILESDIR}
+.endif
+
 .include <bsd.lib.mk>

Modified: user/attilio/vmcontention/contrib/bsnmp/oid-list
==============================================================================
--- user/attilio/vmcontention/contrib/bsnmp/oid-list	Thu May  9 00:14:18 2013	(r250396)
+++ user/attilio/vmcontention/contrib/bsnmp/oid-list	Thu May  9 00:14:24 2013	(r250397)
@@ -24,6 +24,7 @@ enterprises
       204	pingData		bsnmp-ping (Nate Nielsen <nielsen at memberwebs.com>)
       205	begemotBridge		bridge module
       210	begemotWlan		WLAN module
+      220	begemotHast		HAST module
 
       300	BEGEMOT-ACM		DLR ACM project
       303	BEGEMOT-WLINK		DLR WLINK simulator

Modified: user/attilio/vmcontention/contrib/gcc/config/i386/tmmintrin.h
==============================================================================
--- user/attilio/vmcontention/contrib/gcc/config/i386/tmmintrin.h	Thu May  9 00:14:18 2013	(r250396)
+++ user/attilio/vmcontention/contrib/gcc/config/i386/tmmintrin.h	Thu May  9 00:14:24 2013	(r250397)
@@ -222,227 +222,3 @@ _mm_abs_pi32 (__m64 __X)
 #endif /* __SSSE3__ */
 
 #endif /* _TMMINTRIN_H_INCLUDED */
-/* Copyright (C) 2006 Free Software Foundation, Inc.
-
-   This file is part of GCC.
-
-   GCC is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by
-   the Free Software Foundation; either version 2, or (at your option)
-   any later version.
-
-   GCC is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-   GNU General Public License for more details.
-
-   You should have received a copy of the GNU General Public License
-   along with GCC; see the file COPYING.  If not, write to
-   the Free Software Foundation, 59 Temple Place - Suite 330,
-   Boston, MA 02111-1307, USA.  */
-
-/* As a special exception, if you include this header file into source
-   files compiled by GCC, this header file does not by itself cause
-   the resulting executable to be covered by the GNU General Public
-   License.  This exception does not however invalidate any other
-   reasons why the executable file might be covered by the GNU General
-   Public License.  */
-
-/* Implemented from the specification included in the Intel C++ Compiler
-   User Guide and Reference, version 9.1.  */
-
-#ifndef _TMMINTRIN_H_INCLUDED
-#define _TMMINTRIN_H_INCLUDED
-
-#ifdef __SSSE3__
-#include <pmmintrin.h>
-
-static __inline __m128i __attribute__((__always_inline__))
-_mm_hadd_epi16 (__m128i __X, __m128i __Y)
-{
-  return (__m128i) __builtin_ia32_phaddw128 ((__v8hi)__X, (__v8hi)__Y);
-}
-
-static __inline __m128i __attribute__((__always_inline__))
-_mm_hadd_epi32 (__m128i __X, __m128i __Y)
-{
-  return (__m128i) __builtin_ia32_phaddd128 ((__v4si)__X, (__v4si)__Y);
-}
-
-static __inline __m128i __attribute__((__always_inline__))
-_mm_hadds_epi16 (__m128i __X, __m128i __Y)
-{
-  return (__m128i) __builtin_ia32_phaddsw128 ((__v8hi)__X, (__v8hi)__Y);
-}
-
-static __inline __m64 __attribute__((__always_inline__))
-_mm_hadd_pi16 (__m64 __X, __m64 __Y)
-{
-  return (__m64) __builtin_ia32_phaddw ((__v4hi)__X, (__v4hi)__Y);
-}
-
-static __inline __m64 __attribute__((__always_inline__))
-_mm_hadd_pi32 (__m64 __X, __m64 __Y)
-{
-  return (__m64) __builtin_ia32_phaddd ((__v2si)__X, (__v2si)__Y);
-}
-
-static __inline __m64 __attribute__((__always_inline__))
-_mm_hadds_pi16 (__m64 __X, __m64 __Y)
-{
-  return (__m64) __builtin_ia32_phaddsw ((__v4hi)__X, (__v4hi)__Y);
-}
-
-static __inline __m128i __attribute__((__always_inline__))
-_mm_hsub_epi16 (__m128i __X, __m128i __Y)
-{
-  return (__m128i) __builtin_ia32_phsubw128 ((__v8hi)__X, (__v8hi)__Y);
-}
-
-static __inline __m128i __attribute__((__always_inline__))
-_mm_hsub_epi32 (__m128i __X, __m128i __Y)
-{
-  return (__m128i) __builtin_ia32_phsubd128 ((__v4si)__X, (__v4si)__Y);
-}
-
-static __inline __m128i __attribute__((__always_inline__))
-_mm_hsubs_epi16 (__m128i __X, __m128i __Y)
-{
-  return (__m128i) __builtin_ia32_phsubsw128 ((__v8hi)__X, (__v8hi)__Y);
-}
-
-static __inline __m64 __attribute__((__always_inline__))
-_mm_hsub_pi16 (__m64 __X, __m64 __Y)
-{
-  return (__m64) __builtin_ia32_phsubw ((__v4hi)__X, (__v4hi)__Y);
-}
-
-static __inline __m64 __attribute__((__always_inline__))
-_mm_hsub_pi32 (__m64 __X, __m64 __Y)
-{
-  return (__m64) __builtin_ia32_phsubd ((__v2si)__X, (__v2si)__Y);
-}
-
-static __inline __m64 __attribute__((__always_inline__))
-_mm_hsubs_pi16 (__m64 __X, __m64 __Y)
-{
-  return (__m64) __builtin_ia32_phsubsw ((__v4hi)__X, (__v4hi)__Y);
-}
-
-static __inline __m128i __attribute__((__always_inline__))
-_mm_maddubs_epi16 (__m128i __X, __m128i __Y)
-{
-  return (__m128i) __builtin_ia32_pmaddubsw128 ((__v16qi)__X, (__v16qi)__Y);
-}
-
-static __inline __m64 __attribute__((__always_inline__))
-_mm_maddubs_pi16 (__m64 __X, __m64 __Y)
-{
-  return (__m64) __builtin_ia32_pmaddubsw ((__v8qi)__X, (__v8qi)__Y);
-}
-
-static __inline __m128i __attribute__((__always_inline__))
-_mm_mulhrs_epi16 (__m128i __X, __m128i __Y)
-{
-  return (__m128i) __builtin_ia32_pmulhrsw128 ((__v8hi)__X, (__v8hi)__Y);
-}
-
-static __inline __m64 __attribute__((__always_inline__))
-_mm_mulhrs_pi16 (__m64 __X, __m64 __Y)
-{
-  return (__m64) __builtin_ia32_pmulhrsw ((__v4hi)__X, (__v4hi)__Y);
-}
-
-static __inline __m128i __attribute__((__always_inline__))
-_mm_shuffle_epi8 (__m128i __X, __m128i __Y)
-{
-  return (__m128i) __builtin_ia32_pshufb128 ((__v16qi)__X, (__v16qi)__Y);
-}
-
-static __inline __m64 __attribute__((__always_inline__))
-_mm_shuffle_pi8 (__m64 __X, __m64 __Y)
-{
-  return (__m64) __builtin_ia32_pshufb ((__v8qi)__X, (__v8qi)__Y);
-}
-
-static __inline __m128i __attribute__((__always_inline__))
-_mm_sign_epi8 (__m128i __X, __m128i __Y)
-{
-  return (__m128i) __builtin_ia32_psignb128 ((__v16qi)__X, (__v16qi)__Y);
-}
-
-static __inline __m128i __attribute__((__always_inline__))
-_mm_sign_epi16 (__m128i __X, __m128i __Y)
-{
-  return (__m128i) __builtin_ia32_psignw128 ((__v8hi)__X, (__v8hi)__Y);
-}
-
-static __inline __m128i __attribute__((__always_inline__))
-_mm_sign_epi32 (__m128i __X, __m128i __Y)
-{
-  return (__m128i) __builtin_ia32_psignd128 ((__v4si)__X, (__v4si)__Y);
-}
-
-static __inline __m64 __attribute__((__always_inline__))
-_mm_sign_pi8 (__m64 __X, __m64 __Y)
-{
-  return (__m64) __builtin_ia32_psignb ((__v8qi)__X, (__v8qi)__Y);
-}
-
-static __inline __m64 __attribute__((__always_inline__))
-_mm_sign_pi16 (__m64 __X, __m64 __Y)
-{
-  return (__m64) __builtin_ia32_psignw ((__v4hi)__X, (__v4hi)__Y);
-}
-
-static __inline __m64 __attribute__((__always_inline__))
-_mm_sign_pi32 (__m64 __X, __m64 __Y)
-{
-  return (__m64) __builtin_ia32_psignd ((__v2si)__X, (__v2si)__Y);
-}
-
-#define _mm_alignr_epi8(__X, __Y, __N) \
-  ((__m128i)__builtin_ia32_palignr128 ((__v2di) __X, (__v2di) __Y, (__N) * 8))
-
-#define _mm_alignr_pi8(__X, __Y, __N) \
-  ((__m64)__builtin_ia32_palignr ((long long) (__X), (long long) (__Y), (__N) * 8))
-
-static __inline __m128i __attribute__((__always_inline__))
-_mm_abs_epi8 (__m128i __X)
-{
-  return (__m128i) __builtin_ia32_pabsb128 ((__v16qi)__X);
-}
-
-static __inline __m128i __attribute__((__always_inline__))
-_mm_abs_epi16 (__m128i __X)
-{
-  return (__m128i) __builtin_ia32_pabsw128 ((__v8hi)__X);
-}
-
-static __inline __m128i __attribute__((__always_inline__))
-_mm_abs_epi32 (__m128i __X)
-{
-  return (__m128i) __builtin_ia32_pabsd128 ((__v4si)__X);
-}
-
-static __inline __m64 __attribute__((__always_inline__))
-_mm_abs_pi8 (__m64 __X)
-{
-  return (__m64) __builtin_ia32_pabsb ((__v8qi)__X);
-}
-
-static __inline __m64 __attribute__((__always_inline__))
-_mm_abs_pi16 (__m64 __X)
-{
-  return (__m64) __builtin_ia32_pabsw ((__v4hi)__X);
-}
-
-static __inline __m64 __attribute__((__always_inline__))
-_mm_abs_pi32 (__m64 __X)
-{
-  return (__m64) __builtin_ia32_pabsd ((__v2si)__X);
-}
-
-#endif /* __SSSE3__ */
-
-#endif /* _TMMINTRIN_H_INCLUDED */

Modified: user/attilio/vmcontention/gnu/usr.bin/cc/include/Makefile
==============================================================================
--- user/attilio/vmcontention/gnu/usr.bin/cc/include/Makefile	Thu May  9 00:14:18 2013	(r250396)
+++ user/attilio/vmcontention/gnu/usr.bin/cc/include/Makefile	Thu May  9 00:14:24 2013	(r250397)
@@ -9,7 +9,8 @@ INCSDIR=${INCLUDEDIR}/gcc/${GCCVER}
 .PATH: ${GCCDIR}/config/${GCC_CPU}
 
 .if ${TARGET_ARCH} == "i386" || ${TARGET_ARCH} == "amd64"
-INCS=	emmintrin.h mmintrin.h pmmintrin.h tmmintrin.h xmmintrin.h mm_malloc.h
+INCS=	emmintrin.h mmintrin.h mm3dnow.h pmmintrin.h tmmintrin.h xmmintrin.h \
+	mm_malloc.h
 .elif ${TARGET_ARCH} == "ia64"
 INCS=	ia64intrin.h
 .elif ${TARGET_ARCH} == "arm"

Modified: user/attilio/vmcontention/lib/libprocstat/libprocstat.c
==============================================================================
--- user/attilio/vmcontention/lib/libprocstat/libprocstat.c	Thu May  9 00:14:18 2013	(r250396)
+++ user/attilio/vmcontention/lib/libprocstat/libprocstat.c	Thu May  9 00:14:24 2013	(r250397)
@@ -897,7 +897,8 @@ procstat_get_pipe_info(struct procstat *
 		return (procstat_get_pipe_info_sysctl(fst, ps, errbuf));
 	} else {
 		warnx("unknown access method: %d", procstat->type);
-		snprintf(errbuf, _POSIX2_LINE_MAX, "error");
+		if (errbuf != NULL)
+			snprintf(errbuf, _POSIX2_LINE_MAX, "error");
 		return (1);
 	}
 }
@@ -926,7 +927,8 @@ procstat_get_pipe_info_kvm(kvm_t *kd, st
 	return (0);
 
 fail:
-	snprintf(errbuf, _POSIX2_LINE_MAX, "error");
+	if (errbuf != NULL)
+		snprintf(errbuf, _POSIX2_LINE_MAX, "error");
 	return (1);
 }
 
@@ -962,7 +964,8 @@ procstat_get_pts_info(struct procstat *p
 		return (procstat_get_pts_info_sysctl(fst, pts, errbuf));
 	} else {
 		warnx("unknown access method: %d", procstat->type);
-		snprintf(errbuf, _POSIX2_LINE_MAX, "error");
+		if (errbuf != NULL)
+			snprintf(errbuf, _POSIX2_LINE_MAX, "error");
 		return (1);
 	}
 }
@@ -990,7 +993,8 @@ procstat_get_pts_info_kvm(kvm_t *kd, str
 	return (0);
 
 fail:
-	snprintf(errbuf, _POSIX2_LINE_MAX, "error");
+	if (errbuf != NULL)
+		snprintf(errbuf, _POSIX2_LINE_MAX, "error");
 	return (1);
 }
 
@@ -1025,7 +1029,8 @@ procstat_get_sem_info(struct procstat *p
 		return (procstat_get_sem_info_sysctl(fst, sem, errbuf));
 	} else {
 		warnx("unknown access method: %d", procstat->type);
-		snprintf(errbuf, _POSIX2_LINE_MAX, "error");
+		if (errbuf != NULL)
+			snprintf(errbuf, _POSIX2_LINE_MAX, "error");
 		return (1);
 	}
 }
@@ -1071,7 +1076,8 @@ procstat_get_sem_info_kvm(kvm_t *kd, str
 	return (0);
 
 fail:
-	snprintf(errbuf, _POSIX2_LINE_MAX, "error");
+	if (errbuf != NULL)
+		snprintf(errbuf, _POSIX2_LINE_MAX, "error");
 	return (1);
 }
 
@@ -1106,7 +1112,8 @@ procstat_get_shm_info(struct procstat *p
 		return (procstat_get_shm_info_sysctl(fst, shm, errbuf));
 	} else {
 		warnx("unknown access method: %d", procstat->type);
-		snprintf(errbuf, _POSIX2_LINE_MAX, "error");
+		if (errbuf != NULL)
+			snprintf(errbuf, _POSIX2_LINE_MAX, "error");
 		return (1);
 	}
 }
@@ -1152,7 +1159,8 @@ procstat_get_shm_info_kvm(kvm_t *kd, str
 	return (0);
 
 fail:
-	snprintf(errbuf, _POSIX2_LINE_MAX, "error");
+	if (errbuf != NULL)
+		snprintf(errbuf, _POSIX2_LINE_MAX, "error");
 	return (1);
 }
 
@@ -1187,7 +1195,8 @@ procstat_get_vnode_info(struct procstat 
 		return (procstat_get_vnode_info_sysctl(fst, vn, errbuf));
 	} else {
 		warnx("unknown access method: %d", procstat->type);
-		snprintf(errbuf, _POSIX2_LINE_MAX, "error");
+		if (errbuf != NULL)
+			snprintf(errbuf, _POSIX2_LINE_MAX, "error");
 		return (1);
 	}
 }
@@ -1254,7 +1263,8 @@ procstat_get_vnode_info_kvm(kvm_t *kd, s
 			break;
 		}
 	if (i == NTYPES) {
-		snprintf(errbuf, _POSIX2_LINE_MAX, "?(%s)", tagstr);
+		if (errbuf != NULL)
+			snprintf(errbuf, _POSIX2_LINE_MAX, "?(%s)", tagstr);
 		return (1);
 	}
 	vn->vn_mntdir = getmnton(kd, vnode.v_mount);
@@ -1268,7 +1278,8 @@ procstat_get_vnode_info_kvm(kvm_t *kd, s
 	return (0);
 
 fail:
-	snprintf(errbuf, _POSIX2_LINE_MAX, "error");
+	if (errbuf != NULL)
+		snprintf(errbuf, _POSIX2_LINE_MAX, "error");
 	return (1);
 }
 
@@ -1349,7 +1360,10 @@ procstat_get_vnode_info_sysctl(struct fi
 	if (vntype == PS_FST_VTYPE_VNON || vntype == PS_FST_VTYPE_VBAD)
 		return (0);
 	if ((status & KF_ATTR_VALID) == 0) {
-		snprintf(errbuf, _POSIX2_LINE_MAX, "? (no info available)");
+		if (errbuf != NULL) {
+			snprintf(errbuf, _POSIX2_LINE_MAX,
+			    "? (no info available)");
+		}
 		return (1);
 	}
 	if (path && *path) {
@@ -1390,7 +1404,8 @@ procstat_get_socket_info(struct procstat
 		return (procstat_get_socket_info_sysctl(fst, sock, errbuf));
 	} else {
 		warnx("unknown access method: %d", procstat->type);
-		snprintf(errbuf, _POSIX2_LINE_MAX, "error");
+		if (errbuf != NULL)
+			snprintf(errbuf, _POSIX2_LINE_MAX, "error");
 		return (1);
 	}
 }
@@ -1488,7 +1503,8 @@ procstat_get_socket_info_kvm(kvm_t *kd, 
 	return (0);
 
 fail:
-	snprintf(errbuf, _POSIX2_LINE_MAX, "error");
+	if (errbuf != NULL)
+		snprintf(errbuf, _POSIX2_LINE_MAX, "error");
 	return (1);
 }
 

Modified: user/attilio/vmcontention/lib/libusb/libusb.3
==============================================================================
--- user/attilio/vmcontention/lib/libusb/libusb.3	Thu May  9 00:14:18 2013	(r250396)
+++ user/attilio/vmcontention/lib/libusb/libusb.3	Thu May  9 00:14:24 2013	(r250397)
@@ -26,7 +26,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd May 7, 2012
+.Dd May 7, 2013
 .Dt LIBUSB 3
 .Os
 .Sh NAME
@@ -102,6 +102,15 @@ counter decremented once.
 Returns the number of the bus contained by the device
 .Fa dev .
 .Pp
+.Ft int
+.Fn libusb_get_port_path "libusb_context *ctx" "libusb_device *dev" "uint8_t *buf" "uint8_t bufsize"
+Stores, in the buffer
+.Fa buf
+of size
+.Fa bufsize ,
+the list of all port numbers from root for the device
+.Fa dev .
+.Pp
 .Ft uint8_t
 .Fn libusb_get_device_address "libusb_device *dev"
 Returns the device_address contained by the device

Modified: user/attilio/vmcontention/lib/libusb/libusb.h
==============================================================================
--- user/attilio/vmcontention/lib/libusb/libusb.h	Thu May  9 00:14:18 2013	(r250396)
+++ user/attilio/vmcontention/lib/libusb/libusb.h	Thu May  9 00:14:24 2013	(r250397)
@@ -369,6 +369,7 @@ void	libusb_exit(struct libusb_context *
 ssize_t libusb_get_device_list(libusb_context * ctx, libusb_device *** list);
 void	libusb_free_device_list(libusb_device ** list, int unref_devices);
 uint8_t	libusb_get_bus_number(libusb_device * dev);
+int	libusb_get_port_path(libusb_context *ctx, libusb_device *dev, uint8_t *buf, uint8_t bufsize);
 uint8_t	libusb_get_device_address(libusb_device * dev);
 enum libusb_speed libusb_get_device_speed(libusb_device * dev);
 int	libusb_clear_halt(libusb_device_handle *devh, uint8_t endpoint);
@@ -441,7 +442,7 @@ int	libusb_handle_events(libusb_context 
 int	libusb_handle_events_locked(libusb_context * ctx, struct timeval *tv);
 int	libusb_get_next_timeout(libusb_context * ctx, struct timeval *tv);
 void	libusb_set_pollfd_notifiers(libusb_context * ctx, libusb_pollfd_added_cb added_cb, libusb_pollfd_removed_cb removed_cb, void *user_data);
-struct libusb_pollfd **libusb_get_pollfds(libusb_context * ctx);
+const struct libusb_pollfd **libusb_get_pollfds(libusb_context * ctx);
 
 /* Synchronous device I/O */
 

Modified: user/attilio/vmcontention/lib/libusb/libusb10.c
==============================================================================
--- user/attilio/vmcontention/lib/libusb/libusb10.c	Thu May  9 00:14:18 2013	(r250396)
+++ user/attilio/vmcontention/lib/libusb/libusb10.c	Thu May  9 00:14:24 2013	(r250397)
@@ -290,6 +290,13 @@ libusb_get_bus_number(libusb_device *dev
 	return (libusb20_dev_get_bus_number(dev->os_priv));
 }
 
+int
+libusb_get_port_path(libusb_context *ctx, libusb_device *dev, uint8_t *buf,
+    uint8_t bufsize)
+{
+	return (libusb20_dev_get_port_path(dev->os_priv, buf, bufsize));
+}
+
 uint8_t
 libusb_get_device_address(libusb_device *dev)
 {

Modified: user/attilio/vmcontention/lib/libusb/libusb10_io.c
==============================================================================
--- user/attilio/vmcontention/lib/libusb/libusb10_io.c	Thu May  9 00:14:18 2013	(r250396)
+++ user/attilio/vmcontention/lib/libusb/libusb10_io.c	Thu May  9 00:14:24 2013	(r250397)
@@ -397,7 +397,7 @@ libusb_set_pollfd_notifiers(libusb_conte
 	ctx->fd_cb_user_data = user_data;
 }
 
-struct libusb_pollfd **
+const struct libusb_pollfd **
 libusb_get_pollfds(libusb_context *ctx)
 {
 	struct libusb_super_pollfd *pollfd;
@@ -423,7 +423,7 @@ libusb_get_pollfds(libusb_context *ctx)
 
 done:
 	CTX_UNLOCK(ctx);
-	return (ret);
+	return ((const struct libusb_pollfd **)ret);
 }
 
 

Modified: user/attilio/vmcontention/release/picobsd/build/picobsd
==============================================================================
--- user/attilio/vmcontention/release/picobsd/build/picobsd	Thu May  9 00:14:18 2013	(r250396)
+++ user/attilio/vmcontention/release/picobsd/build/picobsd	Thu May  9 00:14:24 2013	(r250397)
@@ -175,17 +175,10 @@ create_includes_and_libraries2() { # opt
     if [ -d "$1" ] ; then
 	cd $1 ; ${BINMAKE} ${o_par} $2	# specific target, e.g. ld-elf.so
     else
-	MAKEOBJDIRPREFIX=${l_objtree}
-	export MAKEOBJDIRPREFIX
-	# export WITH_RESCUE=yes	# build crunchide
-	# ${BINMAKE} ${o_par} _+_= $no toolchain _includes _libraries
-	(
-	    # eval export `cd ${SRC}; ${BINMAKE} -f Makefile.inc1 -V BMAKEENV`
-	    eval "export XMAKE=\"`cd ${SRC}; make -f Makefile -V XMAKE`\""
-	    ${BINMAKE} ${o_par} _+_= $no toolchain
-	)
+	export MAKEOBJDIRPREFIX=${l_objtree}
+	make ${o_par} $no toolchain
+	# XXX do we need any of these ?
         eval export `cd ${SRC}; ${BINMAKE} -f Makefile.inc1 -V WMAKEENV`
-	${BINMAKE} ${o_par} _+_= $no _includes _libraries
 	[ ${o_arch} != `uname -m` ] && \
 	    (cd ${l_objtree}; ln -s . ${o_arch}.${o_arch} || true )
     fi
@@ -442,11 +435,10 @@ do_kernel() {		# OK
 	# export CONFIG
 	export WARNS CWARNFLAGS
 	[ "${o_do_modules}" = "yes" ] && export MODULES=""
-	${BINMAKE} ${o_par} KERNCONF=${l_kernconf}	\
+	# kernel build not parallelizable yet
+	${BINMAKE} KERNCONF=${l_kernconf}	\
 		-v -f ${PICO_TREE}/build/Makefile.conf ) || \
 	    fail $? missing_kernel
-#		-DWITHOUT_CLANG_IS_CC			\
-
 }
 
 # Populate the variable part of the floppy filesystem. Must be done before

Modified: user/attilio/vmcontention/sbin/etherswitchcfg/etherswitchcfg.8
==============================================================================
--- user/attilio/vmcontention/sbin/etherswitchcfg/etherswitchcfg.8	Thu May  9 00:14:18 2013	(r250396)
+++ user/attilio/vmcontention/sbin/etherswitchcfg/etherswitchcfg.8	Thu May  9 00:14:24 2013	(r250397)
@@ -11,12 +11,16 @@
 .Ar info
 .Nm
 .Op Fl "f control file"
+.Ar config
+.Ar command parameter
+.Nm
+.Op Fl "f control file"
 .Ar phy
 .Ar phy.register[=value]
 .Nm
 .Op Fl "f control file"
 .Ar port%d
-.Ar command parameter
+.Ar [flags] command parameter
 .Nm
 .Op Fl "f control file"
 .Ar reg
@@ -46,6 +50,14 @@ Produce more verbose output.
 Without this flag, lines that represent inactive or empty configuration
 options are omitted.
 .El
+.Ss config
+The config command provides access to global switch configuration
+parameters.
+It support the following commands:
+.Bl -tag -width ".Ar vlan_mode mode" -compact
+.It Ar vlan_mode mode
+Sets the switch VLAN mode (depends on the hardware).
+.El
 .Ss phy
 The phy command provides access to the registers of the PHYs attached
 to or integrated into the switch controller.
@@ -68,13 +80,46 @@ Sets the default port VID that is used t
 .It Ar media mediaspec
 Specifies the physical media configuration to be configured for a port.
 .It Ar mediaopt mediaoption
-Specifies a list of media options for a port. See
+Specifies a list of media options for a port.
+See
 .Xr ifconfig 8
 for details on
 .Ar media
 and
 .Ar mediaopt .
 .El
+And the following flags (please note that not all flags
+are supporterd by all switch drivers):
+.Bl -tag -width ".Ar addtag" -compact
+.It Ar addtag
+Add VLAN tag to each packet sent by the port.
+.It Ar -addtag
+Disable the add VLAN tag option.
+.It Ar striptag
+Strip the VLAN tags from the packets sent by the port.
+.It Ar -striptag
+Disable the strip VLAN tag option.
+.It Ar firstlock
+This options makes the switch port lock on the first MAC address it seems.
+After that, usually you need to reset the switch to learn different
+MAC addresses.
+.It Ar -firstlock
+Disable the first lock option.
+Note that sometimes you need to reset the
+switch to really disable this option.
+.It Ar dropuntagged
+Drop packets without a VLAN tag.
+.It Ar -dropuntagged
+Disable the drop untagged packets option.
+.It Ar doubletag
+Enable QinQ for the port.
+.It Ar -doubletag
+Disable QinQ for the port.
+.It Ar ingress
+Enable the ingress filter on the port.
+.It Ar -ingress
+Disable the ingress filter.
+.El
 .Ss reg
 The reg command provides access to the registers of the switch controller.
 .Ss vlangroup

Modified: user/attilio/vmcontention/sbin/etherswitchcfg/etherswitchcfg.c
==============================================================================
--- user/attilio/vmcontention/sbin/etherswitchcfg/etherswitchcfg.c	Thu May  9 00:14:18 2013	(r250396)
+++ user/attilio/vmcontention/sbin/etherswitchcfg/etherswitchcfg.c	Thu May  9 00:14:24 2013	(r250397)
@@ -58,6 +58,7 @@ void    print_media_word_ifconfig(int);
 enum cmdmode {
 	MODE_NONE = 0,
 	MODE_PORT,
+	MODE_CONFIG,
 	MODE_VLANGROUP,
 	MODE_REGISTER,
 	MODE_PHYREG
@@ -68,6 +69,7 @@ struct cfg {
 	int					verbose;
 	int					mediatypes;
 	const char			*controlfile;
+	etherswitch_conf_t	conf;
 	etherswitch_info_t	info;
 	enum cmdmode		mode;
 	int					unit;
@@ -82,7 +84,37 @@ struct cmds {
 static struct cmds cmds[];
 
 
-static void usage(void);
+/*
+ * Print a value a la the %b format of the kernel's printf.
+ * Stolen from ifconfig.c.
+ */
+static void
+printb(const char *s, unsigned v, const char *bits)
+{
+	int i, any = 0;
+	char c;
+
+	if (bits && *bits == 8)
+		printf("%s=%o", s, v);
+	else
+		printf("%s=%x", s, v);
+	bits++;
+	if (bits) {
+		putchar('<');
+		while ((i = *bits++) != '\0') {
+			if (v & (1 << (i-1))) {
+				if (any)
+					putchar(',');
+				any = 1;
+				for (; (c = *bits) > 32; bits++)
+					putchar(c);
+			} else
+				for (; *bits > 32; bits++)
+					;
+		}
+		putchar('>');
+	}
+}
 
 static int
 read_register(struct cfg *cfg, int r)
@@ -150,6 +182,47 @@ set_port_vid(struct cfg *cfg, char *argv
 }
 
 static void
+set_port_flag(struct cfg *cfg, char *argv[])
+{
+	char *flag;
+	int n;
+	uint32_t f;
+	etherswitch_port_t p;
+
+	n = 0;
+	f = 0;
+	flag = argv[0];
+	if (strcmp(flag, "none") != 0) {
+		if (*flag == '-') {
+			n++;
+			flag++;
+		}
+		if (strcasecmp(flag, "striptag") == 0)
+			f = ETHERSWITCH_PORT_STRIPTAG;
+		else if (strcasecmp(flag, "addtag") == 0)
+			f = ETHERSWITCH_PORT_ADDTAG;
+		else if (strcasecmp(flag, "firstlock") == 0)
+			f = ETHERSWITCH_PORT_FIRSTLOCK;
+		else if (strcasecmp(flag, "dropuntagged") == 0)
+			f = ETHERSWITCH_PORT_DROPUNTAGGED;
+		else if (strcasecmp(flag, "doubletag") == 0)
+			f = ETHERSWITCH_PORT_DOUBLE_TAG;
+		else if (strcasecmp(flag, "ingress") == 0)
+			f = ETHERSWITCH_PORT_INGRESS;
+	}
+	bzero(&p, sizeof(p));
+	p.es_port = cfg->unit;
+	if (ioctl(cfg->fd, IOETHERSWITCHGETPORT, &p) != 0)
+		err(EX_OSERR, "ioctl(IOETHERSWITCHGETPORT)");
+	if (n)
+		p.es_flags &= ~f;
+	else
+		p.es_flags |= f;
+	if (ioctl(cfg->fd, IOETHERSWITCHSETPORT, &p) != 0)
+		err(EX_OSERR, "ioctl(IOETHERSWITCHSETPORT)");
+}
+
+static void
 set_port_media(struct cfg *cfg, char *argv[])
 {
 	etherswitch_port_t p;
@@ -290,6 +363,66 @@ set_phyregister(struct cfg *cfg, char *a
 }
 
 static void
+set_vlan_mode(struct cfg *cfg, char *argv[])
+{
+	etherswitch_conf_t conf;
+
+	bzero(&conf, sizeof(conf));
+	conf.cmd = ETHERSWITCH_CONF_VLAN_MODE;
+	if (strcasecmp(argv[1], "isl") == 0)
+		conf.vlan_mode = ETHERSWITCH_VLAN_ISL;
+	else if (strcasecmp(argv[1], "port") == 0)
+		conf.vlan_mode = ETHERSWITCH_VLAN_PORT;
+	else if (strcasecmp(argv[1], "dot1q") == 0)
+		conf.vlan_mode = ETHERSWITCH_VLAN_DOT1Q;
+	else if (strcasecmp(argv[1], "dot1q4k") == 0)
+		conf.vlan_mode = ETHERSWITCH_VLAN_DOT1Q_4K;
+	else if (strcasecmp(argv[1], "qinq") == 0)
+		conf.vlan_mode = ETHERSWITCH_VLAN_DOUBLE_TAG;
+	else
+		conf.vlan_mode = 0;
+	if (ioctl(cfg->fd, IOETHERSWITCHSETCONF, &conf) != 0)
+		err(EX_OSERR, "ioctl(IOETHERSWITCHSETCONF)");
+}
+
+static void
+print_config(struct cfg *cfg)
+{
+	const char *c;
+
+	/* Get the device name. */
+	c = strrchr(cfg->controlfile, '/');
+	if (c != NULL)
+		c = c + 1;
+	else
+		c = cfg->controlfile;
+
+	/* Print VLAN mode. */
+	if (cfg->conf.cmd & ETHERSWITCH_CONF_VLAN_MODE) {
+		printf("%s: VLAN mode: ", c);
+		switch (cfg->conf.vlan_mode) {
+		case ETHERSWITCH_VLAN_ISL:
+			printf("ISL\n");
+			break;
+		case ETHERSWITCH_VLAN_PORT:
+			printf("PORT\n");
+			break;
+		case ETHERSWITCH_VLAN_DOT1Q:
+			printf("DOT1Q\n");
+			break;
+		case ETHERSWITCH_VLAN_DOT1Q_4K:
+			printf("DOT1Q4K\n");
+			break;
+		case ETHERSWITCH_VLAN_DOUBLE_TAG:
+			printf("QinQ\n");
+			break;
+		default:
+			printf("none\n");
+		}
+	}
+}
+
+static void
 print_port(struct cfg *cfg, int port)
 {
 	etherswitch_port_t p;
@@ -303,7 +436,10 @@ print_port(struct cfg *cfg, int port)
 	if (ioctl(cfg->fd, IOETHERSWITCHGETPORT, &p) != 0)
 		err(EX_OSERR, "ioctl(IOETHERSWITCHGETPORT)");
 	printf("port%d:\n", port);
-	printf("\tpvid: %d\n", p.es_pvid);
+	if (cfg->conf.vlan_mode == ETHERSWITCH_VLAN_DOT1Q)
+		printf("\tpvid: %d\n", p.es_pvid);
+	printb("\tflags", p.es_flags, ETHERSWITCH_PORT_FLAGS_BITS);
+	printf("\n");
 	printf("\tmedia: ");
 	print_media_word(p.es_ifmr.ifm_current, 1);
 	if (p.es_ifmr.ifm_active != p.es_ifmr.ifm_current) {
@@ -335,10 +471,13 @@ print_vlangroup(struct cfg *cfg, int vla
 	vg.es_vlangroup = vlangroup;
 	if (ioctl(cfg->fd, IOETHERSWITCHGETVLANGROUP, &vg) != 0)
 		err(EX_OSERR, "ioctl(IOETHERSWITCHGETVLANGROUP)");
-	if (cfg->verbose == 0 && vg.es_member_ports == 0)
+	if (vg.es_vid == 0 && vg.es_member_ports == 0)
 		return;
 	printf("vlangroup%d:\n", vlangroup);
-	printf("\tvlan: %d\n", vg.es_vid);
+	if (cfg->conf.vlan_mode == ETHERSWITCH_VLAN_PORT)
+		printf("\tport: %d\n", vg.es_vid);
+	else
+		printf("\tvlan: %d\n", vg.es_vid);
 	printf("\tmembers ");
 	comma = 0;
 	if (vg.es_member_ports != 0)
@@ -368,9 +507,16 @@ print_info(struct cfg *cfg)
 		c = c + 1;
 	else
 		c = cfg->controlfile;
-	if (cfg->verbose)
-		printf("%s: %s with %d ports and %d VLAN groups\n",
-			c, cfg->info.es_name, cfg->info.es_nports, cfg->info.es_nvlangroups);
+	if (cfg->verbose) {
+		printf("%s: %s with %d ports and %d VLAN groups\n", c,
+		    cfg->info.es_name, cfg->info.es_nports,
+		    cfg->info.es_nvlangroups);
+		printf("%s: ", c);
+		printb("VLAN capabilities",  cfg->info.es_vlan_caps,
+		    ETHERSWITCH_VLAN_CAPS_BITS);
+		printf("\n");
+	}
+	print_config(cfg);
 	for (i=0; i<cfg->info.es_nports; i++) {
 		print_port(cfg, i);
 	}
@@ -380,9 +526,23 @@ print_info(struct cfg *cfg)
 }
 
 static void
-usage(void)
+usage(struct cfg *cfg __unused, char *argv[] __unused)
 {
 	fprintf(stderr, "usage: etherswitchctl\n");
+	fprintf(stderr, "\tetherswitchcfg [-f control file] info\n");
+	fprintf(stderr, "\tetherswitchcfg [-f control file] config "
+	    "command parameter\n");
+	fprintf(stderr, "\t\tconfig commands: vlan_mode\n");
+	fprintf(stderr, "\tetherswitchcfg [-f control file] phy "
+	    "phy.register[=value]\n");
+	fprintf(stderr, "\tetherswitchcfg [-f control file] portX "
+	    "[flags] command parameter\n");
+	fprintf(stderr, "\t\tport commands: pvid, media, mediaopt\n");
+	fprintf(stderr, "\tetherswitchcfg [-f control file] reg "
+	    "register[=value]\n");
+	fprintf(stderr, "\tetherswitchcfg [-f control file] vlangroupX "
+	    "command parameter\n");
+	fprintf(stderr, "\t\tvlangroup commands: vlan, members\n");
 	exit(EX_USAGE);
 }
 
@@ -394,6 +554,15 @@ newmode(struct cfg *cfg, enum cmdmode mo
 	switch (cfg->mode) {
 	case MODE_NONE:
 		break;
+	case MODE_CONFIG:
+		/*
+		 * Read the updated the configuration (it can be different
+		 * from the last time we read it).
+		 */
+		if (ioctl(cfg->fd, IOETHERSWITCHGETCONF, &cfg->conf) != 0)
+			err(EX_OSERR, "ioctl(IOETHERSWITCHGETCONF)");
+		print_config(cfg);
+		break;
 	case MODE_PORT:
 		print_port(cfg, cfg->unit);
 		break;
@@ -430,7 +599,7 @@ main(int argc, char *argv[])
 		case '?':
 			/* FALLTHROUGH */
 		default:
-			usage();
+			usage(&cfg, argv);
 		}
 	argc -= optind;
 	argv += optind;
@@ -439,6 +608,8 @@ main(int argc, char *argv[])
 		err(EX_UNAVAILABLE, "Can't open control file: %s", cfg.controlfile);
 	if (ioctl(cfg.fd, IOETHERSWITCHGETINFO, &cfg.info) != 0)
 		err(EX_OSERR, "ioctl(IOETHERSWITCHGETINFO)");
+	if (ioctl(cfg.fd, IOETHERSWITCHGETCONF, &cfg.conf) != 0)
+		err(EX_OSERR, "ioctl(IOETHERSWITCHGETCONF)");
 	if (argc == 0) {
 		print_info(&cfg);
 		return (0);
@@ -457,15 +628,20 @@ main(int argc, char *argv[])
 				if (cfg.unit < 0 || cfg.unit >= cfg.info.es_nvlangroups)
 					errx(EX_USAGE, "port unit must be between 0 and %d", cfg.info.es_nvlangroups);
 				newmode(&cfg, MODE_VLANGROUP);
+			} else if (strcmp(argv[0], "config") == 0) {
+				newmode(&cfg, MODE_CONFIG);
 			} else if (strcmp(argv[0], "phy") == 0) {
 				newmode(&cfg, MODE_PHYREG);
 			} else if (strcmp(argv[0], "reg") == 0) {
 				newmode(&cfg, MODE_REGISTER);
+			} else if (strcmp(argv[0], "help") == 0) {
+				usage(&cfg, argv);
 			} else {
 				errx(EX_USAGE, "Unknown command \"%s\"", argv[0]);
 			}
 			break;
 		case MODE_PORT:
+		case MODE_CONFIG:
 		case MODE_VLANGROUP:
 			for(i=0; cmds[i].name != NULL; i++) {
 				if (cfg.mode == cmds[i].mode && strcmp(argv[0], cmds[i].name) == 0) {
@@ -510,6 +686,19 @@ static struct cmds cmds[] = {
 	{ MODE_PORT, "pvid", 1, set_port_vid },
 	{ MODE_PORT, "media", 1, set_port_media },
 	{ MODE_PORT, "mediaopt", 1, set_port_mediaopt },
+	{ MODE_PORT, "addtag", 0, set_port_flag },
+	{ MODE_PORT, "-addtag", 0, set_port_flag },
+	{ MODE_PORT, "ingress", 0, set_port_flag },
+	{ MODE_PORT, "-ingress", 0, set_port_flag },
+	{ MODE_PORT, "striptag", 0, set_port_flag },
+	{ MODE_PORT, "-striptag", 0, set_port_flag },
+	{ MODE_PORT, "doubletag", 0, set_port_flag },
+	{ MODE_PORT, "-doubletag", 0, set_port_flag },
+	{ MODE_PORT, "firstlock", 0, set_port_flag },
+	{ MODE_PORT, "-firstlock", 0, set_port_flag },
+	{ MODE_PORT, "dropuntagged", 0, set_port_flag },
+	{ MODE_PORT, "-dropuntagged", 0, set_port_flag },
+	{ MODE_CONFIG, "vlan_mode", 1, set_vlan_mode },
 	{ MODE_VLANGROUP, "vlan", 1, set_vlangroup_vid },
 	{ MODE_VLANGROUP, "members", 1, set_vlangroup_members },
 	{ 0, NULL, 0, NULL }

Modified: user/attilio/vmcontention/sbin/growfs/growfs.c
==============================================================================
--- user/attilio/vmcontention/sbin/growfs/growfs.c	Thu May  9 00:14:18 2013	(r250396)
+++ user/attilio/vmcontention/sbin/growfs/growfs.c	Thu May  9 00:14:24 2013	(r250397)
@@ -1544,7 +1544,7 @@ main(int argc, char **argv)
 		printf(" from %s to %s? [Yes/No] ", oldsizebuf, newsizebuf);
 		fflush(stdout);
 		fgets(reply, (int)sizeof(reply), stdin);
-		if (strcmp(reply, "Yes\n")){
+		if (strcasecmp(reply, "Yes\n")){
 			printf("\nNothing done\n");
 			exit (0);
 		}

Modified: user/attilio/vmcontention/sbin/iscontrol/auth_subr.c
==============================================================================
--- user/attilio/vmcontention/sbin/iscontrol/auth_subr.c	Thu May  9 00:14:18 2013	(r250396)
+++ user/attilio/vmcontention/sbin/iscontrol/auth_subr.c	Thu May  9 00:14:24 2013	(r250397)
@@ -40,9 +40,6 @@ __FBSDID("$FreeBSD$");
 #include <netinet/in.h>
 #include <netinet/tcp.h>
 #include <arpa/inet.h>
-#if __FreeBSD_version < 500000
-#include <sys/time.h>
-#endif
 #include <unistd.h>
 #include <stdlib.h>
 #include <stdio.h>

Modified: user/attilio/vmcontention/sbin/iscontrol/fsm.c
==============================================================================
--- user/attilio/vmcontention/sbin/iscontrol/fsm.c	Thu May  9 00:14:18 2013	(r250396)
+++ user/attilio/vmcontention/sbin/iscontrol/fsm.c	Thu May  9 00:14:24 2013	(r250397)
@@ -40,9 +40,6 @@ __FBSDID("$FreeBSD$");
 #include <netinet/in.h>
 #include <netinet/tcp.h>
 #include <arpa/inet.h>
-#if __FreeBSD_version < 500000
-#include <sys/time.h>
-#endif
 #include <sys/ioctl.h>
 #include <netdb.h>
 #include <stdlib.h>

Modified: user/attilio/vmcontention/sbin/iscontrol/login.c
==============================================================================
--- user/attilio/vmcontention/sbin/iscontrol/login.c	Thu May  9 00:14:18 2013	(r250396)
+++ user/attilio/vmcontention/sbin/iscontrol/login.c	Thu May  9 00:14:24 2013	(r250397)
@@ -39,9 +39,6 @@ __FBSDID("$FreeBSD$");
 #include <netinet/in.h>
 #include <netinet/tcp.h>
 #include <arpa/inet.h>
-#if __FreeBSD_version < 500000
-#include <sys/time.h>
-#endif
 #include <sys/ioctl.h>
 #include <stdio.h>
 #include <stdlib.h>

Modified: user/attilio/vmcontention/sbin/iscontrol/misc.c
==============================================================================
--- user/attilio/vmcontention/sbin/iscontrol/misc.c	Thu May  9 00:14:18 2013	(r250396)
+++ user/attilio/vmcontention/sbin/iscontrol/misc.c	Thu May  9 00:14:24 2013	(r250397)
@@ -40,9 +40,6 @@ __FBSDID("$FreeBSD$");
 #include <netinet/in.h>
 #include <netinet/tcp.h>
 #include <arpa/inet.h>
-#if __FreeBSD_version < 500000
-#include <sys/time.h>
-#endif
 #include <stdlib.h>
 #include <stdio.h>
 #include <string.h>

Modified: user/attilio/vmcontention/sbin/ping6/ping6.8
==============================================================================
--- user/attilio/vmcontention/sbin/ping6/ping6.8	Thu May  9 00:14:18 2013	(r250396)

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


More information about the svn-src-user mailing list