Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 22 May 2017 19:28:25 +0000 (UTC)
From:      Dimitry Andric <dim@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-projects@freebsd.org
Subject:   svn commit: r318658 - in projects/clang500-import: contrib/compiler-rt/lib/builtins contrib/dma contrib/elftoolchain/nm contrib/netbsd-tests/usr.bin/grep contrib/top etc/mtree etc/periodic/daily gn...
Message-ID:  <201705221928.v4MJSPe7068225@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: dim
Date: Mon May 22 19:28:24 2017
New Revision: 318658
URL: https://svnweb.freebsd.org/changeset/base/318658

Log:
  Merge ^/head r318560 through r318657.

Added:
  projects/clang500-import/contrib/compiler-rt/lib/builtins/bswapdi2.c
     - copied unchanged from r318657, head/contrib/compiler-rt/lib/builtins/bswapdi2.c
  projects/clang500-import/contrib/compiler-rt/lib/builtins/bswapsi2.c
     - copied unchanged from r318657, head/contrib/compiler-rt/lib/builtins/bswapsi2.c
  projects/clang500-import/lib/libc++experimental/
     - copied from r318657, head/lib/libc++experimental/
  projects/clang500-import/share/man/man4/ena.4
     - copied unchanged from r318657, head/share/man/man4/ena.4
  projects/clang500-import/sys/dev/ena/
     - copied from r318657, head/sys/dev/ena/
  projects/clang500-import/sys/modules/ena/
     - copied from r318657, head/sys/modules/ena/
  projects/clang500-import/usr.bin/compress/tests/
     - copied from r318657, head/usr.bin/compress/tests/
Modified:
  projects/clang500-import/contrib/compiler-rt/lib/builtins/README.txt
  projects/clang500-import/contrib/dma/dma.8
  projects/clang500-import/contrib/elftoolchain/nm/nm.1
  projects/clang500-import/contrib/netbsd-tests/usr.bin/grep/t_grep.sh
  projects/clang500-import/contrib/top/top.c
  projects/clang500-import/etc/mtree/BSD.include.dist
  projects/clang500-import/etc/mtree/BSD.tests.dist
  projects/clang500-import/etc/periodic/daily/800.scrub-zfs
  projects/clang500-import/gnu/usr.bin/groff/tmac/mdoc.local.in
  projects/clang500-import/lib/Makefile
  projects/clang500-import/lib/libc/gen/Symbol.map
  projects/clang500-import/lib/libc/gen/_spinlock_stub.c
  projects/clang500-import/lib/libc/include/spinlock.h
  projects/clang500-import/lib/libcompiler_rt/Makefile.inc
  projects/clang500-import/lib/libthr/Makefile
  projects/clang500-import/lib/libthr/thread/thr_init.c
  projects/clang500-import/lib/libthr/thread/thr_rwlock.c
  projects/clang500-import/lib/libthr/thread/thr_spinlock.c
  projects/clang500-import/lib/libthr/thread/thr_stack.c
  projects/clang500-import/lib/libthr/thread/thr_symbols.c
  projects/clang500-import/release/Makefile
  projects/clang500-import/release/scripts/pkg-stage.sh
  projects/clang500-import/sys/Makefile
  projects/clang500-import/sys/arm/conf/NOTES
  projects/clang500-import/sys/compat/freebsd32/capabilities.conf
  projects/clang500-import/sys/compat/freebsd32/freebsd32_sysent.c
  projects/clang500-import/sys/compat/linuxkpi/common/include/asm/smp.h
  projects/clang500-import/sys/conf/files
  projects/clang500-import/sys/contrib/ipfilter/netinet/ip_fil.h
  projects/clang500-import/sys/dev/xen/netfront/netfront.c
  projects/clang500-import/sys/fs/msdosfs/denode.h
  projects/clang500-import/sys/fs/msdosfs/fat.h
  projects/clang500-import/sys/fs/msdosfs/msdosfs_conv.c
  projects/clang500-import/sys/fs/msdosfs/msdosfs_denode.c
  projects/clang500-import/sys/fs/msdosfs/msdosfs_fat.c
  projects/clang500-import/sys/fs/msdosfs/msdosfs_vfsops.c
  projects/clang500-import/sys/fs/msdosfs/msdosfs_vnops.c
  projects/clang500-import/sys/fs/msdosfs/msdosfsmount.h
  projects/clang500-import/sys/kern/capabilities.conf
  projects/clang500-import/sys/kern/init_sysent.c
  projects/clang500-import/sys/mips/atheros/ar71xx_machdep.c
  projects/clang500-import/sys/modules/Makefile
  projects/clang500-import/sys/net80211/ieee80211_adhoc.c
  projects/clang500-import/sys/net80211/ieee80211_hostap.c
  projects/clang500-import/sys/net80211/ieee80211_ht.c
  projects/clang500-import/sys/net80211/ieee80211_ht.h
  projects/clang500-import/sys/net80211/ieee80211_input.h
  projects/clang500-import/sys/net80211/ieee80211_mesh.c
  projects/clang500-import/sys/net80211/ieee80211_sta.c
  projects/clang500-import/sys/net80211/ieee80211_wds.c
  projects/clang500-import/sys/netinet/tcp_usrreq.c
  projects/clang500-import/sys/netinet6/udp6_usrreq.c
  projects/clang500-import/tests/sys/aio/aio_kqueue_test.c
  projects/clang500-import/tests/sys/aio/lio_kqueue_test.c
  projects/clang500-import/tools/build/mk/OptionalObsoleteFiles.inc
  projects/clang500-import/usr.bin/catman/catman.1
  projects/clang500-import/usr.bin/catman/catman.c
  projects/clang500-import/usr.bin/compress/Makefile
  projects/clang500-import/usr.bin/compress/compress.c
  projects/clang500-import/usr.bin/grep/file.c
  projects/clang500-import/usr.bin/grep/grep.h
  projects/clang500-import/usr.bin/grep/queue.c
  projects/clang500-import/usr.bin/grep/util.c
  projects/clang500-import/usr.sbin/bsdinstall/scripts/script
  projects/clang500-import/usr.sbin/efivar/efivar.8
  projects/clang500-import/usr.sbin/mountd/exports.5
  projects/clang500-import/usr.sbin/nscd/query.c
Directory Properties:
  projects/clang500-import/   (props changed)
  projects/clang500-import/contrib/compiler-rt/   (props changed)
  projects/clang500-import/contrib/dma/   (props changed)
  projects/clang500-import/contrib/elftoolchain/   (props changed)
  projects/clang500-import/contrib/netbsd-tests/   (props changed)
  projects/clang500-import/contrib/top/   (props changed)
  projects/clang500-import/sys/contrib/ipfilter/   (props changed)

Modified: projects/clang500-import/contrib/compiler-rt/lib/builtins/README.txt
==============================================================================
--- projects/clang500-import/contrib/compiler-rt/lib/builtins/README.txt	Mon May 22 19:22:06 2017	(r318657)
+++ projects/clang500-import/contrib/compiler-rt/lib/builtins/README.txt	Mon May 22 19:28:24 2017	(r318658)
@@ -57,8 +57,8 @@ si_int __popcountsi2(si_int a);  // bit 
 si_int __popcountdi2(di_int a);  // bit population
 si_int __popcountti2(ti_int a);  // bit population
 
-uint32_t __bswapsi2(uint32_t a);   // a byteswapped, arm only
-uint64_t __bswapdi2(uint64_t a);   // a byteswapped, arm only
+uint32_t __bswapsi2(uint32_t a);   // a byteswapped, arm/mips only
+uint64_t __bswapdi2(uint64_t a);   // a byteswapped, arm/mips only
 
 // Integral arithmetic
 

Copied: projects/clang500-import/contrib/compiler-rt/lib/builtins/bswapdi2.c (from r318657, head/contrib/compiler-rt/lib/builtins/bswapdi2.c)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ projects/clang500-import/contrib/compiler-rt/lib/builtins/bswapdi2.c	Mon May 22 19:28:24 2017	(r318658, copy of r318657, head/contrib/compiler-rt/lib/builtins/bswapdi2.c)
@@ -0,0 +1,28 @@
+/* ===-- bswapdi2.c - Implement __bswapdi2 ---------------------------------===
+ *
+ *               The LLVM Compiler Infrastructure
+ *
+ * This file is dual licensed under the MIT and the University of Illinois Open
+ * Source Licenses. See LICENSE.TXT for details.
+ *
+ * ===----------------------------------------------------------------------===
+ *
+ * This file implements __bswapdi2 for the compiler_rt library.
+ *
+ * ===----------------------------------------------------------------------===
+ */
+
+#include "int_lib.h"
+
+COMPILER_RT_ABI uint64_t
+__bswapdi2 (uint64_t u)
+{
+	return ((((u) & 0xff00000000000000ULL) >> 56)
+	    | (((u) & 0x00ff000000000000ULL) >> 40)
+	    | (((u) & 0x0000ff0000000000ULL) >> 24)
+	    | (((u) & 0x000000ff00000000ULL) >>  8)
+	    | (((u) & 0x00000000ff000000ULL) <<  8)
+	    | (((u) & 0x0000000000ff0000ULL) << 24)
+	    | (((u) & 0x000000000000ff00ULL) << 40)
+	    | (((u) & 0x00000000000000ffULL) << 56));
+}

Copied: projects/clang500-import/contrib/compiler-rt/lib/builtins/bswapsi2.c (from r318657, head/contrib/compiler-rt/lib/builtins/bswapsi2.c)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ projects/clang500-import/contrib/compiler-rt/lib/builtins/bswapsi2.c	Mon May 22 19:28:24 2017	(r318658, copy of r318657, head/contrib/compiler-rt/lib/builtins/bswapsi2.c)
@@ -0,0 +1,25 @@
+/* ===-- bswapsi2.c - Implement __bswapsi2 ---------------------------------===
+ *
+ *               The LLVM Compiler Infrastructure
+ *
+ * This file is dual licensed under the MIT and the University of Illinois Open
+ * Source Licenses. See LICENSE.TXT for details.
+ *
+ * ===----------------------------------------------------------------------===
+ *
+ * This file implements __bswapsi2 for the compiler_rt library.
+ *
+ * ===----------------------------------------------------------------------===
+ */
+
+#include "int_lib.h"
+
+COMPILER_RT_ABI uint32_t
+__bswapsi2 (uint32_t u)
+{
+
+	return ((((u) & 0xff000000) >> 24)
+	    | (((u) & 0x00ff0000) >>  8)
+	    | (((u) & 0x0000ff00) <<  8)
+	    | (((u) & 0x000000ff) << 24));
+}

Modified: projects/clang500-import/contrib/dma/dma.8
==============================================================================
--- projects/clang500-import/contrib/dma/dma.8	Mon May 22 19:22:06 2017	(r318657)
+++ projects/clang500-import/contrib/dma/dma.8	Mon May 22 19:28:24 2017	(r318658)
@@ -30,7 +30,7 @@
 .\" OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
 .\" SUCH DAMAGE.
 .\"
-.Dd February 13, 2014
+.Dd May 20, 2017
 .Dt DMA 8
 .Os
 .Sh NAME
@@ -74,7 +74,7 @@ acts as a compatibility option for sendm
 .It Fl bp
 List all mails currently stored in the mail queue.
 .It Fl bq
-Queue the mail, but don't attempt to deliver it.
+Queue the mail, but do not attempt to deliver it.
 See also the
 .Sq DEFER
 config file setting below.
@@ -82,9 +82,9 @@ config file setting below.
 .Pp
 All other
 .Ar mode Ns
-s are are ignored.
+s are ignored.
 .It Fl D
-Don't run in the background.
+Do not run in the background.
 Useful for debugging.
 .It Fl f Ar sender
 Set sender address (envelope-from) to
@@ -198,7 +198,7 @@ The special name
 .Ql *
 can be used to create a catch-all alias, which gets used if no other
 matching alias is found.
-Use the catch-all alias only if you don't want any local mail to be
+Use the catch-all alias only if you do not want any local mail to be
 delivered.
 .It Ic SPOOLDIR Xo
 (string, default=/var/spool/dma)
@@ -213,7 +213,7 @@ Just stick with the default.
 Path to the
 .Sq auth.conf
 file.
-.It Ic SECURETRANS Xo
+.It Ic SECURETRANSFER Xo
 (boolean, default=commented)
 .Xc
 Uncomment if you want TLS/SSL secured transfer.
@@ -222,7 +222,7 @@ Uncomment if you want TLS/SSL secured tr
 .Xc
 Uncomment if you want to use STARTTLS.
 Only useful together with
-.Sq SECURETRANS .
+.Sq SECURETRANSFER .
 .It Ic OPPORTUNISTIC_TLS Xo
 (boolean, default=commented)
 .Xc
@@ -234,7 +234,7 @@ the outside mail exchangers; in opportun
 be encrypted if the remote server supports STARTTLS, but an unencrypted
 delivery will still be made if the negotiation fails.
 Only useful together with
-.Sq SECURETRANS
+.Sq SECURETRANSFER
 and
 .Sq STARTTLS .
 .It Ic CERTFILE Xo
@@ -305,7 +305,8 @@ will send all mails as
 setting it to
 .Ql percolator
 will send all mails as
-.Ql Sm off Va username @percolator .
+.Sm off
+.Ql Va username @percolator .
 .Sm on
 .It Ic NULLCLIENT Xo
 .Xc

Modified: projects/clang500-import/contrib/elftoolchain/nm/nm.1
==============================================================================
--- projects/clang500-import/contrib/elftoolchain/nm/nm.1	Mon May 22 19:22:06 2017	(r318657)
+++ projects/clang500-import/contrib/elftoolchain/nm/nm.1	Mon May 22 19:28:24 2017	(r318658)
@@ -24,7 +24,7 @@
 .\"
 .\" $Id: nm.1 3195 2015-05-12 17:22:19Z emaste $
 .\"
-.Dd February 15, 2015
+.Dd May 21, 2017
 .Os
 .Dt NM 1
 .Sh NAME
@@ -304,6 +304,8 @@ A local
 (uninitialized data) symbol.
 .It d
 A local data symbol.
+.It r
+A local read-only data symbol.
 .It t
 A local text symbol.
 .It v

Modified: projects/clang500-import/contrib/netbsd-tests/usr.bin/grep/t_grep.sh
==============================================================================
--- projects/clang500-import/contrib/netbsd-tests/usr.bin/grep/t_grep.sh	Mon May 22 19:22:06 2017	(r318657)
+++ projects/clang500-import/contrib/netbsd-tests/usr.bin/grep/t_grep.sh	Mon May 22 19:28:24 2017	(r318658)
@@ -413,6 +413,26 @@ wflag_emptypat_body()
 	atf_check -o file:test4 grep -w -e "" test4
 }
 
+atf_test_case excessive_matches
+excessive_matches_head()
+{
+	atf_set "descr" "Check for proper handling of lines with excessive matches (PR 218811)"
+}
+excessive_matches_body()
+{
+	grep_type
+	if [ $? -eq $GREP_TYPE_GNU_FREEBSD ]; then
+		atf_expect_fail "this test does not pass with GNU grep in base"
+	fi
+
+	for i in $(jot 4096); do
+		printf "x" >> test.in
+	done
+
+	atf_check -s exit:0 -x '[ $(grep -o x test.in | wc -l) -eq 4096 ]'
+	atf_check -s exit:1 -x 'grep -on x test.in | grep -v "1:x"'
+}
+
 atf_test_case fgrep_sanity
 fgrep_sanity_head()
 {
@@ -490,6 +510,39 @@ wv_combo_break_body()
 	atf_check -s exit:1 grep -v -w "x" test2
 }
 
+atf_test_case ocolor_metadata
+ocolor_metadata_head()
+{
+	atf_set "descr" "Check for -n/-b producing per-line metadata output"
+}
+ocolor_metadata_body()
+{
+	grep_type
+	if [ $? -eq $GREP_TYPE_GNU_FREEBSD ]; then
+		atf_expect_fail "this test does not pass with GNU grep in base"
+	fi
+
+	printf "xxx\nyyyy\nzzz\nfoobarbaz\n" > test1
+	check_expr="^[^:]*[0-9][^:]*:[^:]+$"
+
+	atf_check -o inline:"1:1:xx\n" grep -bon "xx$" test1
+
+	atf_check -o inline:"2:4:yyyy\n" grep -bn "yy" test1
+
+	atf_check -o inline:"2:6:yy\n" grep -bon "yy$" test1
+
+	# These checks ensure that grep isn't producing bogus line numbering
+	# in the middle of a line.
+	atf_check -s exit:1 -x \
+	    "grep -Eon 'x|y|z|f' test1 | grep -Ev '${check_expr}'"
+
+	atf_check -s exit:1 -x \
+	    "grep -En 'x|y|z|f' --color=always test1 | grep -Ev '${check_expr}'"
+
+	atf_check -s exit:1 -x \
+	    "grep -Eon 'x|y|z|f' --color=always test1 | grep -Ev '${check_expr}'"
+}
+
 atf_test_case grep_nomatch_flags
 grep_nomatch_flags_head()
 {
@@ -603,10 +656,12 @@ atf_init_test_cases()
 	atf_add_test_case egrep_empty_invalid
 	atf_add_test_case zerolen
 	atf_add_test_case wflag_emptypat
+	atf_add_test_case excessive_matches
 	atf_add_test_case wv_combo_break
 	atf_add_test_case fgrep_sanity
 	atf_add_test_case egrep_sanity
 	atf_add_test_case grep_sanity
+	atf_add_test_case ocolor_metadata
 	atf_add_test_case grep_nomatch_flags
 	atf_add_test_case binary_flags
 	atf_add_test_case badcontext

Modified: projects/clang500-import/contrib/top/top.c
==============================================================================
--- projects/clang500-import/contrib/top/top.c	Mon May 22 19:22:06 2017	(r318657)
+++ projects/clang500-import/contrib/top/top.c	Mon May 22 19:28:24 2017	(r318658)
@@ -433,7 +433,7 @@ char *argv[];
 	      default:
 		fprintf(stderr,
 "Top version %s\n"
-"Usage: %s [-abCHIijnPqStuvz] [-d count] [-m io | cpu] [-o field] [-s time]\n"
+"Usage: %s [-abCHIijnPqStuvwz] [-d count] [-m io | cpu] [-o field] [-s time]\n"
 "       [-J jail] [-U username] [number]\n",
 			version_string(), myname);
 		exit(1);

Modified: projects/clang500-import/etc/mtree/BSD.include.dist
==============================================================================
--- projects/clang500-import/etc/mtree/BSD.include.dist	Mon May 22 19:22:06 2017	(r318657)
+++ projects/clang500-import/etc/mtree/BSD.include.dist	Mon May 22 19:28:24 2017	(r318658)
@@ -156,8 +156,6 @@
         ..
         usb
         ..
-        utopia
-        ..
         vkbd
         ..
         wi

Modified: projects/clang500-import/etc/mtree/BSD.tests.dist
==============================================================================
--- projects/clang500-import/etc/mtree/BSD.tests.dist	Mon May 22 19:22:06 2017	(r318657)
+++ projects/clang500-import/etc/mtree/BSD.tests.dist	Mon May 22 19:28:24 2017	(r318658)
@@ -606,6 +606,8 @@
         ..
         cmp
         ..
+        compress
+        ..
         cpio
         ..
         col

Modified: projects/clang500-import/etc/periodic/daily/800.scrub-zfs
==============================================================================
--- projects/clang500-import/etc/periodic/daily/800.scrub-zfs	Mon May 22 19:22:06 2017	(r318657)
+++ projects/clang500-import/etc/periodic/daily/800.scrub-zfs	Mon May 22 19:28:24 2017	(r318658)
@@ -71,7 +71,7 @@ case "$daily_scrub_zfs_enable" in
 
 		# Now minus last scrub (both in seconds) converted to days.
 		_scrub_diff=$(expr -e \( $(date +%s) - \
-		    $(date -j -f %F.%T ${_last_scrub} +%s) \) / 60 / 60 / 24)
+		    $(date -j -v -70M -f %F.%T ${_last_scrub} +%s) \) / 60 / 60 / 24)
 		if [ ${_scrub_diff} -lt ${_pool_threshold} ]; then
 			echo "   skipping scrubbing of pool '${pool}':"
 			echo "      last scrubbing is ${_scrub_diff} days ago, threshold is set to ${_pool_threshold} days"

Modified: projects/clang500-import/gnu/usr.bin/groff/tmac/mdoc.local.in
==============================================================================
--- projects/clang500-import/gnu/usr.bin/groff/tmac/mdoc.local.in	Mon May 22 19:22:06 2017	(r318657)
+++ projects/clang500-import/gnu/usr.bin/groff/tmac/mdoc.local.in	Mon May 22 19:28:24 2017	(r318658)
@@ -65,6 +65,7 @@
 .ds doc-operating-system-FreeBSD-10.2   10.2
 .ds doc-operating-system-FreeBSD-10.3   10.3
 .ds doc-operating-system-FreeBSD-11.0   11.0
+.ds doc-operating-system-FreeBSD-11.1   11.1
 .ds doc-operating-system-FreeBSD-12.0   12.0
 .
 .\" Definitions for other *BSDs not (yet) in doc-common

Modified: projects/clang500-import/lib/Makefile
==============================================================================
--- projects/clang500-import/lib/Makefile	Mon May 22 19:22:06 2017	(r318657)
+++ projects/clang500-import/lib/Makefile	Mon May 22 19:28:24 2017	(r318658)
@@ -157,6 +157,9 @@ _libclang_rt=	libclang_rt
 .if ${MK_LIBCPLUSPLUS} != "no"
 _libcxxrt=	libcxxrt
 _libcplusplus=	libc++
+.if ${MACHINE_CPUARCH} != "arm"
+_libcplusplus+=	libc++experimental
+.endif
 .endif
 
 SUBDIR.${MK_EFI}+=	libefivar

Modified: projects/clang500-import/lib/libc/gen/Symbol.map
==============================================================================
--- projects/clang500-import/lib/libc/gen/Symbol.map	Mon May 22 19:22:06 2017	(r318657)
+++ projects/clang500-import/lib/libc/gen/Symbol.map	Mon May 22 19:28:24 2017	(r318658)
@@ -485,7 +485,6 @@ FBSDprivate_1.0 {
 	_pthread_sigmask;
 	_pthread_testcancel;
 	_spinlock;
-	_spinlock_debug;
 	_spinunlock;
 	_rtld_addr_phdr;
 	_rtld_atfork_pre;

Modified: projects/clang500-import/lib/libc/gen/_spinlock_stub.c
==============================================================================
--- projects/clang500-import/lib/libc/gen/_spinlock_stub.c	Mon May 22 19:22:06 2017	(r318657)
+++ projects/clang500-import/lib/libc/gen/_spinlock_stub.c	Mon May 22 19:28:24 2017	(r318658)
@@ -38,7 +38,6 @@ __FBSDID("$FreeBSD$");
 long _atomic_lock_stub(volatile long *);
 void _spinlock_stub(spinlock_t *);
 void _spinunlock_stub(spinlock_t *);
-void _spinlock_debug_stub(spinlock_t *, char *, int);
 
 __weak_reference(_atomic_lock_stub, _atomic_lock);
 
@@ -48,7 +47,6 @@ _atomic_lock_stub(volatile long *lck __u
 	return (0L);
 }
 
-__weak_reference(_spinlock, _spinlock_debug);
 #pragma weak _spinlock
 void
 _spinlock(spinlock_t *lck)

Modified: projects/clang500-import/lib/libc/include/spinlock.h
==============================================================================
--- projects/clang500-import/lib/libc/include/spinlock.h	Mon May 22 19:22:06 2017	(r318657)
+++ projects/clang500-import/lib/libc/include/spinlock.h	Mon May 22 19:28:24 2017	(r318658)
@@ -41,21 +41,17 @@
  * Lock structure with room for debugging information.
  */
 struct _spinlock {
-	volatile long	access_lock;
-	volatile long	lock_owner;
-	volatile char	*fname;
-	volatile int	lineno;
+	long	spare1;
+	long	spare2;
+	void	*thr_extra;
+	int	spare3;
 };
 typedef struct _spinlock spinlock_t;
 
 #define	_SPINLOCK_INITIALIZER	{ 0, 0, 0, 0 }
 
 #define _SPINUNLOCK(_lck)	_spinunlock(_lck);
-#ifdef	_LOCK_DEBUG
-#define	_SPINLOCK(_lck)		_spinlock_debug(_lck, __FILE__, __LINE__)
-#else
 #define	_SPINLOCK(_lck)		_spinlock(_lck)
-#endif
 
 /*
  * Thread function prototype definitions:
@@ -64,7 +60,6 @@ __BEGIN_DECLS
 long	_atomic_lock(volatile long *);
 void	_spinlock(spinlock_t *);
 void	_spinunlock(spinlock_t *);
-void	_spinlock_debug(spinlock_t *, char *, int);
 __END_DECLS
 
 #endif /* _SPINLOCK_H_ */

Modified: projects/clang500-import/lib/libcompiler_rt/Makefile.inc
==============================================================================
--- projects/clang500-import/lib/libcompiler_rt/Makefile.inc	Mon May 22 19:22:06 2017	(r318657)
+++ projects/clang500-import/lib/libcompiler_rt/Makefile.inc	Mon May 22 19:28:24 2017	(r318658)
@@ -224,3 +224,10 @@ SRCS+=		switch8.S
 SRCS+=		switchu8.S
 SRCS+=		sync_synchronize.S
 .endif
+
+# GCC-6.3 on mips32 requires bswap32 built-in.
+.if ${MACHINE_CPUARCH} == "mips"
+SRCS+=		bswapdi2.c
+SRCS+=		bswapsi2.c
+.endif
+

Modified: projects/clang500-import/lib/libthr/Makefile
==============================================================================
--- projects/clang500-import/lib/libthr/Makefile	Mon May 22 19:22:06 2017	(r318657)
+++ projects/clang500-import/lib/libthr/Makefile	Mon May 22 19:28:24 2017	(r318658)
@@ -17,6 +17,7 @@ MK_SSP=	no
 LIB=thr
 SHLIB_MAJOR= 3
 WARNS?=	3
+NO_WTHREAD_SAFETY=1
 CFLAGS+=-DPTHREAD_KERNEL
 CFLAGS+=-I${SRCTOP}/lib/libc/include -I${.CURDIR}/thread \
 	-I${SRCTOP}/include
@@ -27,6 +28,12 @@ CFLAGS+=-I${SRCTOP}/libexec/rtld-elf/${M
 CFLAGS+=-I${SRCTOP}/lib/libthread_db
 CFLAGS+=-Winline
 
+CFLAGS.thr_stack.c+=	-Wno-cast-align
+.include <bsd.compiler.mk>
+.if !(${COMPILER_TYPE} == "gcc" && ${COMPILER_VERSION} < 40300)
+CFLAGS.thr_symbols.c+=	-Wno-missing-variable-declarations
+.endif
+
 .ifndef NO_THREAD_UNWIND_STACK
 CFLAGS+=-fexceptions
 CFLAGS+=-D_PTHREAD_FORCED_UNWIND

Modified: projects/clang500-import/lib/libthr/thread/thr_init.c
==============================================================================
--- projects/clang500-import/lib/libthr/thread/thr_init.c	Mon May 22 19:22:06 2017	(r318657)
+++ projects/clang500-import/lib/libthr/thread/thr_init.c	Mon May 22 19:28:24 2017	(r318658)
@@ -173,7 +173,6 @@ STATIC_LIB_REQUIRE(_sigtimedwait);
 STATIC_LIB_REQUIRE(_sigwait);
 STATIC_LIB_REQUIRE(_sigwaitinfo);
 STATIC_LIB_REQUIRE(_spinlock);
-STATIC_LIB_REQUIRE(_spinlock_debug);
 STATIC_LIB_REQUIRE(_spinunlock);
 STATIC_LIB_REQUIRE(_thread_init_hack);
 

Modified: projects/clang500-import/lib/libthr/thread/thr_rwlock.c
==============================================================================
--- projects/clang500-import/lib/libthr/thread/thr_rwlock.c	Mon May 22 19:22:06 2017	(r318657)
+++ projects/clang500-import/lib/libthr/thread/thr_rwlock.c	Mon May 22 19:28:24 2017	(r318658)
@@ -49,27 +49,42 @@ __weak_reference(_pthread_rwlock_unlock,
 __weak_reference(_pthread_rwlock_wrlock, pthread_rwlock_wrlock);
 __weak_reference(_pthread_rwlock_timedwrlock, pthread_rwlock_timedwrlock);
 
-#define CHECK_AND_INIT_RWLOCK							\
-	if (*rwlock == THR_PSHARED_PTR) {					\
-		prwlock = __thr_pshared_offpage(rwlock, 0);			\
-		if (prwlock == NULL)						\
-			return (EINVAL);					\
-	} else if (__predict_false((prwlock = (*rwlock)) <=			\
-	    THR_RWLOCK_DESTROYED)) {						\
-		if (prwlock == THR_RWLOCK_INITIALIZER) {			\
-			int ret;						\
-			ret = init_static(_get_curthread(), rwlock);		\
-			if (ret)						\
-				return (ret);					\
-		} else if (prwlock == THR_RWLOCK_DESTROYED) {			\
-			return (EINVAL);					\
-		}								\
-		prwlock = *rwlock;						\
-	}
-
-/*
- * Prototypes
- */
+static int init_static(struct pthread *thread, pthread_rwlock_t *rwlock);
+static int init_rwlock(pthread_rwlock_t *rwlock, pthread_rwlock_t *rwlock_out);
+
+static int __always_inline
+check_and_init_rwlock(pthread_rwlock_t *rwlock, pthread_rwlock_t *rwlock_out)
+{
+	if (__predict_false(*rwlock == THR_PSHARED_PTR ||
+	    *rwlock <= THR_RWLOCK_DESTROYED))
+		return (init_rwlock(rwlock, rwlock_out));
+	*rwlock_out = *rwlock;
+	return (0);
+}
+
+static int __noinline
+init_rwlock(pthread_rwlock_t *rwlock, pthread_rwlock_t *rwlock_out)
+{
+	pthread_rwlock_t prwlock;
+	int ret;
+
+	if (*rwlock == THR_PSHARED_PTR) {
+		prwlock = __thr_pshared_offpage(rwlock, 0);
+		if (prwlock == NULL)
+			return (EINVAL);
+	} else if ((prwlock = *rwlock) <= THR_RWLOCK_DESTROYED) {
+		if (prwlock == THR_RWLOCK_INITIALIZER) {
+			ret = init_static(_get_curthread(), rwlock);
+			if (ret != 0)
+				return (ret);
+		} else if (prwlock == THR_RWLOCK_DESTROYED) {
+			return (EINVAL);
+		}
+		prwlock = *rwlock;
+	}
+	*rwlock_out = prwlock;
+	return (0);
+}
 
 static int
 rwlock_init(pthread_rwlock_t *rwlock, const pthread_rwlockattr_t *attr)
@@ -148,7 +163,9 @@ rwlock_rdlock_common(pthread_rwlock_t *r
 	int flags;
 	int ret;
 
-	CHECK_AND_INIT_RWLOCK
+	ret = check_and_init_rwlock(rwlock, &prwlock);
+	if (ret != 0)
+		return (ret);
 
 	if (curthread->rdlock_count) {
 		/*
@@ -220,7 +237,9 @@ _pthread_rwlock_tryrdlock (pthread_rwloc
 	int flags;
 	int ret;
 
-	CHECK_AND_INIT_RWLOCK
+	ret = check_and_init_rwlock(rwlock, &prwlock);
+	if (ret != 0)
+		return (ret);
 
 	if (curthread->rdlock_count) {
 		/*
@@ -253,7 +272,9 @@ _pthread_rwlock_trywrlock (pthread_rwloc
 	pthread_rwlock_t prwlock;
 	int ret;
 
-	CHECK_AND_INIT_RWLOCK
+	ret = check_and_init_rwlock(rwlock, &prwlock);
+	if (ret != 0)
+		return (ret);
 
 	ret = _thr_rwlock_trywrlock(&prwlock->lock);
 	if (ret == 0)
@@ -268,7 +289,9 @@ rwlock_wrlock_common (pthread_rwlock_t *
 	pthread_rwlock_t prwlock;
 	int ret;
 
-	CHECK_AND_INIT_RWLOCK
+	ret = check_and_init_rwlock(rwlock, &prwlock);
+	if (ret != 0)
+		return (ret);
 
 	/*
 	 * POSIX said the validity of the abstimeout parameter need

Modified: projects/clang500-import/lib/libthr/thread/thr_spinlock.c
==============================================================================
--- projects/clang500-import/lib/libthr/thread/thr_spinlock.c	Mon May 22 19:22:06 2017	(r318657)
+++ projects/clang500-import/lib/libthr/thread/thr_spinlock.c	Mon May 22 19:28:24 2017	(r318658)
@@ -65,7 +65,7 @@ __thr_spinunlock(spinlock_t *lck)
 {
 	struct spinlock_extra	*_extra;
 
-	_extra = (struct spinlock_extra *)lck->fname;
+	_extra = lck->thr_extra;
 	THR_UMUTEX_UNLOCK(_get_curthread(), &_extra->lock);
 }
 
@@ -78,9 +78,9 @@ __thr_spinlock(spinlock_t *lck)
 		PANIC("Spinlock called when not threaded.");
 	if (!initialized)
 		PANIC("Spinlocks not initialized.");
-	if (lck->fname == NULL)
+	if (lck->thr_extra == NULL)
 		init_spinlock(lck);
-	_extra = (struct spinlock_extra *)lck->fname;
+	_extra = lck->thr_extra;
 	THR_UMUTEX_LOCK(_get_curthread(), &_extra->lock);
 }
 
@@ -90,14 +90,14 @@ init_spinlock(spinlock_t *lck)
 	struct pthread *curthread = _get_curthread();
 
 	THR_UMUTEX_LOCK(curthread, &spinlock_static_lock);
-	if ((lck->fname == NULL) && (spinlock_count < MAX_SPINLOCKS)) {
-		lck->fname = (char *)&extra[spinlock_count];
+	if ((lck->thr_extra == NULL) && (spinlock_count < MAX_SPINLOCKS)) {
+		lck->thr_extra = &extra[spinlock_count];
 		_thr_umutex_init(&extra[spinlock_count].lock);
 		extra[spinlock_count].owner = lck;
 		spinlock_count++;
 	}
 	THR_UMUTEX_UNLOCK(curthread, &spinlock_static_lock);
-	if (lck->fname == NULL)
+	if (lck->thr_extra == NULL)
 		PANIC("Warning: exceeded max spinlocks");
 }
 

Modified: projects/clang500-import/lib/libthr/thread/thr_stack.c
==============================================================================
--- projects/clang500-import/lib/libthr/thread/thr_stack.c	Mon May 22 19:22:06 2017	(r318657)
+++ projects/clang500-import/lib/libthr/thread/thr_stack.c	Mon May 22 19:28:24 2017	(r318658)
@@ -290,19 +290,6 @@ _thr_stack_alloc(struct pthread_attr *at
 		return (-1);
 }
 
-/*
- * Disable this warning from clang:
- *
- * cast from 'char *' to
- *    'struct stack *' increases required alignment from 1 to 8
- *    [-Werror,-Wcast-align]
- *                 spare_stack = (struct stack *)
- */
-#ifdef __clang__
-#pragma GCC diagnostic push
-#pragma GCC diagnostic ignored "-Wcast-align"
-#endif
-
 /* This function must be called with _thread_list_lock held. */
 void
 _thr_stack_free(struct pthread_attr *attr)
@@ -329,7 +316,3 @@ _thr_stack_free(struct pthread_attr *att
 		attr->stackaddr_attr = NULL;
 	}
 }
-
-#ifdef __clang__
-#pragma GCC diagnostic pop
-#endif

Modified: projects/clang500-import/lib/libthr/thread/thr_symbols.c
==============================================================================
--- projects/clang500-import/lib/libthr/thread/thr_symbols.c	Mon May 22 19:22:06 2017	(r318657)
+++ projects/clang500-import/lib/libthr/thread/thr_symbols.c	Mon May 22 19:28:24 2017	(r318658)
@@ -37,10 +37,6 @@ __FBSDID("$FreeBSD$");
 
 #include "thr_private.h"
 
-#ifdef __clang__
-#pragma GCC diagnostic ignored "-Wmissing-variable-declarations"
-#endif
-
 /* A collection of symbols needed by debugger */
 
 /* int _libthr_debug */

Modified: projects/clang500-import/release/Makefile
==============================================================================
--- projects/clang500-import/release/Makefile	Mon May 22 19:22:06 2017	(r318657)
+++ projects/clang500-import/release/Makefile	Mon May 22 19:28:24 2017	(r318658)
@@ -270,7 +270,7 @@ packagesystem: base.txz kernel.txz ${EXT
 
 pkg-stage:
 .if !defined(NOPKG)
-	env REPOS_DIR=${.CURDIR}/pkg_repos/ \
+	env PORTSDIR=${PORTSDIR} REPOS_DIR=${.CURDIR}/pkg_repos/ \
 		sh ${.CURDIR}/scripts/pkg-stage.sh
 	mkdir -p ${.OBJDIR}/dvd/packages/repos/
 	cp ${.CURDIR}/scripts/FreeBSD_install_cdrom.conf \

Modified: projects/clang500-import/release/scripts/pkg-stage.sh
==============================================================================
--- projects/clang500-import/release/scripts/pkg-stage.sh	Mon May 22 19:22:06 2017	(r318657)
+++ projects/clang500-import/release/scripts/pkg-stage.sh	Mon May 22 19:28:24 2017	(r318658)
@@ -10,6 +10,7 @@ export PKG_DBDIR="/tmp/pkg"
 export PERMISSIVE="YES"
 export REPO_AUTOUPDATE="NO"
 export PKGCMD="/usr/sbin/pkg -d"
+export PORTSDIR="${PORTSDIR:-/usr/ports}"
 
 _DVD_PACKAGES="archivers/unzip
 devel/subversion
@@ -33,8 +34,8 @@ x11/kde4
 x11/xorg"
 
 # If NOPORTS is set for the release, do not attempt to build pkg(8).
-if [ ! -f /usr/ports/Makefile ]; then
-	echo "*** /usr/ports is missing!    ***"
+if [ ! -f ${PORTSDIR}/Makefile ]; then
+	echo "*** ${PORTSDIR} is missing!    ***"
 	echo "*** Skipping pkg-stage.sh     ***"
 	echo "*** Unset NOPORTS to fix this ***"
 	exit 0
@@ -42,7 +43,7 @@ fi
 
 if [ ! -x /usr/local/sbin/pkg ]; then
 	/etc/rc.d/ldconfig restart
-	/usr/bin/make -C /usr/ports/ports-mgmt/pkg install clean
+	/usr/bin/make -C ${PORTSDIR}/ports-mgmt/pkg install clean
 fi
 
 export DVD_DIR="dvd/packages"
@@ -58,7 +59,7 @@ fi
 # Ensure the ports listed in _DVD_PACKAGES exist to sanitize the
 # final list.
 for _P in ${_DVD_PACKAGES}; do
-	if [ -d "/usr/ports/${_P}" ]; then
+	if [ -d "${PORTSDIR}/${_P}" ]; then
 		DVD_PACKAGES="${DVD_PACKAGES} ${_P}"
 	else
 		echo "*** Skipping nonexistent port: ${_P}"

Copied: projects/clang500-import/share/man/man4/ena.4 (from r318657, head/share/man/man4/ena.4)
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ projects/clang500-import/share/man/man4/ena.4	Mon May 22 19:28:24 2017	(r318658, copy of r318657, head/share/man/man4/ena.4)
@@ -0,0 +1,255 @@
+.\" Copyright (c) 2015-2017 Amazon.com, Inc. or its affiliates.
+.\" All rights reserved.
+.\"
+.\" Redistribution and use in source and binary forms, with or without
+.\" modification, are permitted provided that the following conditions
+.\" are met:
+.\"
+.\" 1. Redistributions of source code must retain the above copyright
+.\"    notice, this list of conditions and the following disclaimer.
+.\"
+.\" 2. Redistributions in binary form must reproduce the above copyright
+.\"    notice, this list of conditions and the following disclaimer in
+.\"    the documentation and/or other materials provided with the
+.\"    distribution.
+.\"
+.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+.\" "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+.\" LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+.\" A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+.\" OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+.\" SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+.\" LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+.\" OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+.\"
+.\" $FreeBSD$
+.\"
+.Dd May 04, 2017
+.Dt ENA 4
+.Os
+.Sh NAME
+.Nm ena
+.Nd "FreeBSD kernel driver for Elastic Network Adapter (ENA) family"
+.Sh SYNOPSIS
+To compile this driver into the kernel,
+place the following line in your
+kernel configuration file:
+.Bd -ragged -offset indent
+.Cd "device ena"
+.Ed
+.Pp
+Alternatively, to load the driver as a
+module at boot time, place the following line in
+.Xr loader.conf 5 :
+.Bd -literal -offset indent
+if_ena_load="YES"
+.Ed
+.Sh DESCRIPTION
+The ENA is a networking interface designed to make good use of modern CPU
+features and system architectures.
+.Pp
+The ENA device exposes a lightweight management interface with a
+minimal set of memory mapped registers and extendable command set
+through an Admin Queue.
+.Pp
+The driver supports a range of ENA devices, is link-speed independent
+(i.e., the same driver is used for 10GbE, 25GbE, 40GbE, etc.), and has
+a negotiated and extendable feature set.
+.Pp
+Some ENA devices support SR-IOV. This driver is used for both the
+SR-IOV Physical Function (PF) and Virtual Function (VF) devices.
+.Pp
+The ENA devices enable high speed and low overhead network traffic
+processing by providing multiple Tx/Rx queue pairs (the maximum number
+is advertised by the device via the Admin Queue), a dedicated MSI-X
+interrupt vector per Tx/Rx queue pair, and CPU cacheline optimized
+data placement.
+.Pp
+The
+.Nm
+driver supports industry standard TCP/IP offload features such
+as checksum offload and TCP transmit segmentation offload (TSO).
+Receive-side scaling (RSS) is supported for multi-core scaling.
+.Pp
+The
+.Nm
+driver and its corresponding devices implement health
+monitoring mechanisms such as watchdog, enabling the device and driver
+to recover in a manner transparent to the application, as well as
+debug logs.
+.Pp
+Some of the ENA devices support a working mode called Low-latency
+Queue (LLQ), which saves several more microseconds. This feature will
+be implemented for driver in future releases.
+.Sh HARDWARE
+Supported PCI vendor ID/device IDs:
+.Pp
+.Bl -bullet -compact
+.It
+1d0f:0ec2 - ENA PF
+.It
+1d0f:1ec2 - ENA PF with LLQ support
+.It
+1d0f:ec20 - ENA VF
+.It
+1d0f:ec21 - ENA VF with LLQ support
+.El
+.Sh DIAGNOSTICS
+.Ss Device initialization phase:
+.Bl -diag
+.It ena%d: failed to init mmio read less
+.Pp
+Error occured during initialization of the mmio register read request.
+.It ena%d: Can not reset device
+.Pp
+Device could not be reset; device may not be responding or is already
+during reset.
+.It ena%d: device version is too low
+.Pp
+Version of the controller is too low and it is not supported by the driver.
+.It ena%d: Invalid dma width value %d
+.Pp
+The controller is able to request dma transcation width. Device stopped
+responding or it demanded invalid value.
+.It ena%d: Can not initialize ena admin queue with device
+.Pp
+Initialization of the Admin Queue failed; device may not be responding or there
+was a problem with initialization of the resources.
+.It ena%d: Cannot get attribute for ena device rc: %d
+.Pp
+Failed to get attributes of the device from the controller.
+.It ena%d: Cannot configure aenq groups rc: %d
+.Pp
+Errors occured when trying to configure AENQ groups.
+.El
+.Ss Driver initialisation/shutdown phase:
+.Bl -diag
+.It ena%d: PCI resource allocation failed!
+.It ena%d: allocating ena_dev failed
+.It ena%d: failed to pmap registers bar
+.It ena%d: Error while setting up bufring
+.It ena%d: Error with initialization of IO rings
+.It ena%d: can not allocate ifnet structure
+.It ena%d: Error with network interface setup
+.It ena%d: Failed to enable and set the admin interrupts
+.It ena%d: Failed to allocate %d, vectors %d
+.It ena%d: Failed to enable MSIX, vectors %d rc %d
+.It ena%d: Error with MSI-X enablement
+.It ena%d: could not allocate irq vector: %d
+.It ena%d: Unable to allocate bus resource: registers
+.Pp
+Resource allocation failed when initializing the device; driver will not
+be attached.
+.It ena%d: ENA device init failed (err: %d)
+.Pp
+Device initialization failed; driver will not be attached.
+.It ena%d: could not activate irq vector: %d
+.Pp
+Error occured when trying to activate interrupt vectors for Admin Queue.
+.It ena%d: failed to register interrupt handler for irq %ju: %d
+.Pp
+Error occured when trying to register Admin Queue interrupt handler.
+.It ena%d: Cannot setup mgmnt queue intr
+.Pp
+Error occured during configuration of the Admin Queue interrupts.
+.It ena%d: Enable MSI-X failed
+.Pp
+Configuration of the MSI-X for Admin Queue failed; there could be lack
+of resources or interrupts could not have been configured; driver will
+not be attached.
+.It ena%d: VLAN is in use, detach first
+.Pp
+VLANs are being used when trying to detach the driver; VLANs should be detached
+first and then detach routine should be called again.
+.It ena%d: Unmapped RX DMA tag associations
+.It ena%d: Unmapped TX DMA tag associations
+.Pp
+Error occured when trying to destroy RX/TX DMA tag.
+.It ena%d: Cannot init RSS
+.It ena%d: Cannot fill indirect table
+.It ena%d: Cannot fill indirect table
+.It ena%d: Cannot fill hash function
+.It ena%d: Cannot fill hash control
+.It ena%d: WARNING: RSS was not properly initialized, it will affect bandwidth
+.Pp
+Error occured during initialization of one of RSS resources; device is still
+going to work but it will affect performance because all RX packets will be
+passed to queue 0 and there will be no hash information.
+.It ena%d: failed to tear down irq: %d
+.It ena%d: dev has no parent while releasing res for irq: %d
+Release of the interrupts failed.
+.El
+.Ss Additional diagnostic:
+.Bl -diag
+.It ena%d: Cannot get attribute for ena device
+.Pp
+This message appears when trying to change MTU and driver is unable to get
+attributes from the device.
+.It ena%d: Invalid MTU setting. new_mtu: %d
+.Pp
+Requested MTU value is not supported and will not be set.
+.It ena%d: keep alive watchdog timeout
+.Pp
+Device stopped responding and will be reset.
+.It ena%d: Found a Tx that wasn't completed on time, qid %d, index %d.
+.Pp
+Packet was pushed to the NIC but not sent within given time limit; it may
+be caused by hang of the IO queue.
+.It ena%d: The number of lost tx completion is aboce the threshold (%d > %d). Reset the device
+.Pp
+If too many Tx wasn't completed on time the device is going to be reset; it may
+be caused by hanged queue or device.
+.It ena%d: trigger reset is on
+.Pp
+Device will be reset; reset is triggered either by watchdog or if too many TX
+packets were not completed on time.
+.It ena%d: invalid value recvd
+.Pp
+Link status received from the device in the AENQ handler is invalid.
+.It ena%d: Allocation for Tx Queue %u failed
+.It ena%d: Allocation for Rx Queue %u failed
+.It ena%d: Unable to create Rx DMA map for buffer %d
+.It ena%d: Failed to create io TX queue #%d rc: %d
+.It ena%d: Failed to get TX queue handlers. TX queue num %d rc: %d
+.It ena%d: Failed to create io RX queue[%d] rc: %d
+.It ena%d: Failed to get RX queue handlers. RX queue num %d rc: %d
+.It ena%d: failed to request irq
+.It ena%d: could not allocate irq vector: %d
+.It ena%d: failed to register interrupt handler for irq %ju: %d
+.Pp
+IO resources initialization failed. Interface will not be brought up.
+.It ena%d: LRO[%d] Initialization failed!
+.Pp
+Initialization of the LRO for the RX ring failed.
+.It ena%d: failed to alloc buffer for rx queue
+.It ena%d: failed to add buffer for rx queue %d
+.It ena%d: refilled rx queue %d with %d pages only
+.Pp
+Allocation of resources used on RX path failed; if happened during
+initialization of the IO queue, the interface will not be brought up.
+.It ena%d: ioctl promisc/allmulti
+.Pp
+IOCTL request for the device to work in promiscuous/allmulti mode; see
+.Xr ifconfig 8
+for more details.
+.It ena%d: too many fragments. Last fragment: %d!
+.Pp
+Packet with unsupported number of segments was queued for sending to the
+device; packet will be dropped.
+.Sh SUPPORT
+If an issue is identified with the released source code with a supported adapter
+email the specific information related to the issue to
+.Aq Mt mk@semihalf.com
+and
+.Aq Mt mw@semihalf.com .
+.Sh SEE ALSO
+.Xr vlan 4 ,
+.Xr ifconfig 8
+.Sh AUTHORS
+The
+.Nm
+driver was written by
+.An Semihalf.

Modified: projects/clang500-import/sys/Makefile
==============================================================================
--- projects/clang500-import/sys/Makefile	Mon May 22 19:22:06 2017	(r318657)
+++ projects/clang500-import/sys/Makefile	Mon May 22 19:28:24 2017	(r318658)
@@ -59,19 +59,7 @@ TAGS ${.CURDIR}/TAGS: ${.CURDIR}/cscope.
 	rm -f ${.CURDIR}/TAGS
 	cd ${.CURDIR}; xargs etags -a < ${.CURDIR}/cscope.files
 
-# You need the textproc/glimpse ports for this.
-glimpse:
-.if !exists(${.CURDIR}/.glimpse_exclude)
-	echo .svn > ${.CURDIR}/.glimpse_exclude
-	echo /compile/ >> ${.CURDIR}/.glimpse_exclude
-.endif
-	cd ${.CURDIR}; glimpseindex -H . -B -f -o .
-
-glimpse-clean:
-	cd ${.CURDIR}; rm -f .glimpse_*
-
-.if !(make(cscope) || make(cscope-clean) || make(cscope-hook) || make(TAGS) || \
-    make(glimpse) || make(glimpse-clean))
+.if !(make(cscope) || make(cscope-clean) || make(cscope-hook) || make(TAGS))
 .include <src.opts.mk>
 
 # The boot loader

Modified: projects/clang500-import/sys/arm/conf/NOTES
==============================================================================
--- projects/clang500-import/sys/arm/conf/NOTES	Mon May 22 19:22:06 2017	(r318657)
+++ projects/clang500-import/sys/arm/conf/NOTES	Mon May 22 19:28:24 2017	(r318658)
@@ -79,6 +79,7 @@ nodevice	snake_saver
 nodevice	star_saver
 nodevice	warp_saver
 
+nodevice	ccr
 nodevice	cxgbe
 nodevice	cxgbev
 nodevice	snd_cmi

Modified: projects/clang500-import/sys/compat/freebsd32/capabilities.conf
==============================================================================
--- projects/clang500-import/sys/compat/freebsd32/capabilities.conf	Mon May 22 19:22:06 2017	(r318657)
+++ projects/clang500-import/sys/compat/freebsd32/capabilities.conf	Mon May 22 19:28:24 2017	(r318658)
@@ -188,7 +188,6 @@ renameat
 symlinkat
 unlinkat
 freebsd32_utimensat
-open
 pdfork
 pdgetpid
 pdkill

Modified: projects/clang500-import/sys/compat/freebsd32/freebsd32_sysent.c
==============================================================================
--- projects/clang500-import/sys/compat/freebsd32/freebsd32_sysent.c	Mon May 22 19:22:06 2017	(r318657)
+++ projects/clang500-import/sys/compat/freebsd32/freebsd32_sysent.c	Mon May 22 19:28:24 2017	(r318658)
@@ -57,7 +57,7 @@ struct sysent freebsd32_sysent[] = {
 	{ 0, (sy_call_t *)sys_fork, AUE_FORK, NULL, 0, 0, SYF_CAPENABLED, SY_THR_STATIC },	/* 2 = fork */
 	{ AS(read_args), (sy_call_t *)sys_read, AUE_READ, NULL, 0, 0, SYF_CAPENABLED, SY_THR_STATIC },	/* 3 = read */
 	{ AS(write_args), (sy_call_t *)sys_write, AUE_WRITE, NULL, 0, 0, SYF_CAPENABLED, SY_THR_STATIC },	/* 4 = write */
-	{ AS(open_args), (sy_call_t *)sys_open, AUE_OPEN_RWTC, NULL, 0, 0, SYF_CAPENABLED, SY_THR_STATIC },	/* 5 = open */
+	{ AS(open_args), (sy_call_t *)sys_open, AUE_OPEN_RWTC, NULL, 0, 0, 0, SY_THR_STATIC },	/* 5 = open */
 	{ AS(close_args), (sy_call_t *)sys_close, AUE_CLOSE, NULL, 0, 0, SYF_CAPENABLED, SY_THR_STATIC },	/* 6 = close */
 	{ AS(freebsd32_wait4_args), (sy_call_t *)freebsd32_wait4, AUE_WAIT4, NULL, 0, 0, 0, SY_THR_STATIC },	/* 7 = freebsd32_wait4 */
 	{ 0, (sy_call_t *)nosys, AUE_NULL, NULL, 0, 0, 0, SY_THR_ABSENT },			/* 8 = obsolete old creat */

Modified: projects/clang500-import/sys/compat/linuxkpi/common/include/asm/smp.h
==============================================================================
--- projects/clang500-import/sys/compat/linuxkpi/common/include/asm/smp.h	Mon May 22 19:22:06 2017	(r318657)
+++ projects/clang500-import/sys/compat/linuxkpi/common/include/asm/smp.h	Mon May 22 19:28:24 2017	(r318658)
@@ -37,4 +37,12 @@ int	linux_wbinvd_on_all_cpus(void);
 
 #endif
 
+#define	get_cpu() ({			\
+	sched_pin();			\
+	PCPU_GET(cpuid);		\
+})
+
+#define	put_cpu()			\
+	sched_unpin()
+
 #endif /* _ASM_SMP_H_ */

Modified: projects/clang500-import/sys/conf/files
==============================================================================
--- projects/clang500-import/sys/conf/files	Mon May 22 19:22:06 2017	(r318657)

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



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