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...
Dimitry Andric
dim at FreeBSD.org
Mon May 22 19:28:29 UTC 2017
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 at semihalf.com
+and
+.Aq Mt mw at 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 ***
More information about the svn-src-projects
mailing list