Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 14 Jun 2017 02:46:38 +0000 (UTC)
From:      Alan Cox <alc@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-user@freebsd.org
Subject:   svn commit: r319931 - in user/alc/PQ_LAUNDRY: . bin/df bin/ln bin/ln/tests contrib/ipfilter/tools contrib/llvm/tools/lld/ELF etc/mtree etc/rc.d lib/clang/libclang lib/clang/liblldb lib/clang/libllv...
Message-ID:  <201706140246.v5E2kckd028506@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: alc
Date: Wed Jun 14 02:46:38 2017
New Revision: 319931
URL: https://svnweb.freebsd.org/changeset/base/319931

Log:
  MFH

Added:
  user/alc/PQ_LAUNDRY/sys/dev/neta/
     - copied from r319928, head/sys/dev/neta/
  user/alc/PQ_LAUNDRY/usr.bin/du/tests/
     - copied from r319928, head/usr.bin/du/tests/
  user/alc/PQ_LAUNDRY/usr.bin/stat/tests/
     - copied from r319928, head/usr.bin/stat/tests/
  user/alc/PQ_LAUNDRY/usr.sbin/chown/tests/chown_test.sh
     - copied unchanged from r319928, head/usr.sbin/chown/tests/chown_test.sh
Deleted:
  user/alc/PQ_LAUNDRY/usr.sbin/chown/tests/chown-f_test.sh
Modified:
  user/alc/PQ_LAUNDRY/Makefile
  user/alc/PQ_LAUNDRY/Makefile.inc1
  user/alc/PQ_LAUNDRY/ObsoleteFiles.inc
  user/alc/PQ_LAUNDRY/bin/df/df.c
  user/alc/PQ_LAUNDRY/bin/ln/ln.1
  user/alc/PQ_LAUNDRY/bin/ln/tests/ln_test.sh
  user/alc/PQ_LAUNDRY/contrib/ipfilter/tools/ippool.c
  user/alc/PQ_LAUNDRY/contrib/llvm/tools/lld/ELF/ICF.cpp
  user/alc/PQ_LAUNDRY/etc/mtree/BSD.tests.dist
  user/alc/PQ_LAUNDRY/etc/rc.d/sendmail
  user/alc/PQ_LAUNDRY/lib/clang/libclang/Makefile
  user/alc/PQ_LAUNDRY/lib/clang/liblldb/Makefile
  user/alc/PQ_LAUNDRY/lib/clang/libllvm/Makefile
  user/alc/PQ_LAUNDRY/lib/libc/gen/getbsize.3
  user/alc/PQ_LAUNDRY/lib/libc/sys/ptrace.2
  user/alc/PQ_LAUNDRY/lib/libcam/tests/libcam_test.c
  user/alc/PQ_LAUNDRY/sbin/ipfw/dummynet.c
  user/alc/PQ_LAUNDRY/share/misc/committers-src.dot
  user/alc/PQ_LAUNDRY/share/mk/local.sys.mk
  user/alc/PQ_LAUNDRY/share/mk/sys.mk
  user/alc/PQ_LAUNDRY/sys/amd64/amd64/trap.c
  user/alc/PQ_LAUNDRY/sys/amd64/cloudabi32/cloudabi32_sysvec.c
  user/alc/PQ_LAUNDRY/sys/amd64/cloudabi64/cloudabi64_sysvec.c
  user/alc/PQ_LAUNDRY/sys/amd64/ia32/ia32_syscall.c
  user/alc/PQ_LAUNDRY/sys/amd64/include/proc.h
  user/alc/PQ_LAUNDRY/sys/amd64/linux/linux_sysvec.c
  user/alc/PQ_LAUNDRY/sys/amd64/linux32/linux32_sysvec.c
  user/alc/PQ_LAUNDRY/sys/arm/arm/cpuinfo.c
  user/alc/PQ_LAUNDRY/sys/arm/arm/identcpu-v6.c
  user/alc/PQ_LAUNDRY/sys/arm/arm/mp_machdep.c
  user/alc/PQ_LAUNDRY/sys/arm/arm/pmap-v6.c
  user/alc/PQ_LAUNDRY/sys/arm/arm/syscall.c
  user/alc/PQ_LAUNDRY/sys/arm/cloudabi32/cloudabi32_sysvec.c
  user/alc/PQ_LAUNDRY/sys/arm/conf/ARMADA38X
  user/alc/PQ_LAUNDRY/sys/arm/include/cpuinfo.h
  user/alc/PQ_LAUNDRY/sys/arm/include/pmap-v6.h
  user/alc/PQ_LAUNDRY/sys/arm/mv/files.mv
  user/alc/PQ_LAUNDRY/sys/arm/mv/mpic.c
  user/alc/PQ_LAUNDRY/sys/arm/mv/mv_common.c
  user/alc/PQ_LAUNDRY/sys/arm/mv/mvwin.h
  user/alc/PQ_LAUNDRY/sys/arm64/arm64/trap.c
  user/alc/PQ_LAUNDRY/sys/arm64/cloudabi64/cloudabi64_sysvec.c
  user/alc/PQ_LAUNDRY/sys/arm64/include/proc.h
  user/alc/PQ_LAUNDRY/sys/boot/fdt/dts/arm/armada-388-clearfog.dts
  user/alc/PQ_LAUNDRY/sys/boot/fdt/dts/arm/armada-38x.dtsi
  user/alc/PQ_LAUNDRY/sys/compat/ia32/ia32_util.h
  user/alc/PQ_LAUNDRY/sys/compat/linux/linux_file.c
  user/alc/PQ_LAUNDRY/sys/conf/options
  user/alc/PQ_LAUNDRY/sys/dev/bnxt/if_bnxt.c
  user/alc/PQ_LAUNDRY/sys/dev/cxgbe/common/t4_hw.c
  user/alc/PQ_LAUNDRY/sys/dev/etherswitch/e6000sw/e6000sw.c
  user/alc/PQ_LAUNDRY/sys/dev/hwpmc/hwpmc_armv7.c
  user/alc/PQ_LAUNDRY/sys/dev/hwpmc/hwpmc_mod.c
  user/alc/PQ_LAUNDRY/sys/dev/hwpmc/pmc_events.h
  user/alc/PQ_LAUNDRY/sys/dev/netmap/if_ixl_netmap.h
  user/alc/PQ_LAUNDRY/sys/dev/netmap/netmap.c
  user/alc/PQ_LAUNDRY/sys/dev/netmap/netmap_freebsd.c
  user/alc/PQ_LAUNDRY/sys/dev/netmap/netmap_generic.c
  user/alc/PQ_LAUNDRY/sys/dev/netmap/netmap_kern.h
  user/alc/PQ_LAUNDRY/sys/dev/netmap/netmap_mbq.h
  user/alc/PQ_LAUNDRY/sys/dev/netmap/netmap_mem2.c
  user/alc/PQ_LAUNDRY/sys/dev/netmap/netmap_mem2.h
  user/alc/PQ_LAUNDRY/sys/dev/netmap/netmap_monitor.c
  user/alc/PQ_LAUNDRY/sys/dev/netmap/netmap_pipe.c
  user/alc/PQ_LAUNDRY/sys/dev/netmap/netmap_pt.c
  user/alc/PQ_LAUNDRY/sys/dev/netmap/netmap_vale.c
  user/alc/PQ_LAUNDRY/sys/dev/vt/hw/vga/vt_vga.c
  user/alc/PQ_LAUNDRY/sys/fs/msdosfs/denode.h
  user/alc/PQ_LAUNDRY/sys/fs/msdosfs/direntry.h
  user/alc/PQ_LAUNDRY/sys/fs/msdosfs/fat.h
  user/alc/PQ_LAUNDRY/sys/fs/nfs/nfsproto.h
  user/alc/PQ_LAUNDRY/sys/i386/cloudabi32/cloudabi32_sysvec.c
  user/alc/PQ_LAUNDRY/sys/i386/i386/trap.c
  user/alc/PQ_LAUNDRY/sys/i386/include/proc.h
  user/alc/PQ_LAUNDRY/sys/i386/linux/linux_sysvec.c
  user/alc/PQ_LAUNDRY/sys/kern/init_main.c
  user/alc/PQ_LAUNDRY/sys/kern/kern_fork.c
  user/alc/PQ_LAUNDRY/sys/kern/kern_sig.c
  user/alc/PQ_LAUNDRY/sys/kern/kern_thread.c
  user/alc/PQ_LAUNDRY/sys/kern/kern_uuid.c
  user/alc/PQ_LAUNDRY/sys/kern/subr_blist.c
  user/alc/PQ_LAUNDRY/sys/kern/subr_prf.c
  user/alc/PQ_LAUNDRY/sys/kern/subr_syscall.c
  user/alc/PQ_LAUNDRY/sys/kern/sys_process.c
  user/alc/PQ_LAUNDRY/sys/mips/include/proc.h
  user/alc/PQ_LAUNDRY/sys/mips/mips/trap.c
  user/alc/PQ_LAUNDRY/sys/modules/ffec/Makefile
  user/alc/PQ_LAUNDRY/sys/net/iflib.c
  user/alc/PQ_LAUNDRY/sys/net/route.c
  user/alc/PQ_LAUNDRY/sys/net/route.h
  user/alc/PQ_LAUNDRY/sys/powerpc/include/proc.h
  user/alc/PQ_LAUNDRY/sys/powerpc/powerpc/trap.c
  user/alc/PQ_LAUNDRY/sys/riscv/include/proc.h
  user/alc/PQ_LAUNDRY/sys/riscv/riscv/trap.c
  user/alc/PQ_LAUNDRY/sys/security/mac_bsdextended/mac_bsdextended.c
  user/alc/PQ_LAUNDRY/sys/sparc64/include/proc.h
  user/alc/PQ_LAUNDRY/sys/sparc64/sparc64/trap.c
  user/alc/PQ_LAUNDRY/sys/sys/blist.h
  user/alc/PQ_LAUNDRY/sys/sys/pmc.h
  user/alc/PQ_LAUNDRY/sys/sys/proc.h
  user/alc/PQ_LAUNDRY/sys/sys/ptrace.h
  user/alc/PQ_LAUNDRY/sys/sys/sysent.h
  user/alc/PQ_LAUNDRY/sys/sys/uuid.h
  user/alc/PQ_LAUNDRY/tools/test/ptrace/scescx.c
  user/alc/PQ_LAUNDRY/usr.bin/diff/tests/diff_test.sh
  user/alc/PQ_LAUNDRY/usr.bin/du/Makefile
  user/alc/PQ_LAUNDRY/usr.bin/du/du.c
  user/alc/PQ_LAUNDRY/usr.bin/finger/finger.c
  user/alc/PQ_LAUNDRY/usr.bin/hexdump/display.c
  user/alc/PQ_LAUNDRY/usr.bin/stat/Makefile
  user/alc/PQ_LAUNDRY/usr.bin/stat/stat.1
  user/alc/PQ_LAUNDRY/usr.bin/top/machine.c
  user/alc/PQ_LAUNDRY/usr.bin/top/top.local.1
  user/alc/PQ_LAUNDRY/usr.bin/yes/yes.c
  user/alc/PQ_LAUNDRY/usr.sbin/bsdinstall/scripts/auto
  user/alc/PQ_LAUNDRY/usr.sbin/bsdinstall/scripts/zfsboot
  user/alc/PQ_LAUNDRY/usr.sbin/chown/tests/Makefile
  user/alc/PQ_LAUNDRY/usr.sbin/makefs/mtree.c
  user/alc/PQ_LAUNDRY/usr.sbin/rpc.lockd/lockd.c
Directory Properties:
  user/alc/PQ_LAUNDRY/   (props changed)
  user/alc/PQ_LAUNDRY/contrib/ipfilter/   (props changed)
  user/alc/PQ_LAUNDRY/contrib/llvm/   (props changed)
  user/alc/PQ_LAUNDRY/contrib/llvm/tools/lld/   (props changed)

Modified: user/alc/PQ_LAUNDRY/Makefile
==============================================================================
--- user/alc/PQ_LAUNDRY/Makefile	Wed Jun 14 02:42:38 2017	(r319930)
+++ user/alc/PQ_LAUNDRY/Makefile	Wed Jun 14 02:46:38 2017	(r319931)
@@ -522,6 +522,8 @@ TARGET!=	uname -m
 .endif
 .if defined(MAKE_ALL_KERNELS)
 _THINNER=cat
+.elif defined(MAKE_LINT_KERNELS)
+_THINNER=grep 'LINT' || true
 .else
 _THINNER=xargs grep -L "^.NO_UNIVERSE" || true
 .endif

Modified: user/alc/PQ_LAUNDRY/Makefile.inc1
==============================================================================
--- user/alc/PQ_LAUNDRY/Makefile.inc1	Wed Jun 14 02:42:38 2017	(r319930)
+++ user/alc/PQ_LAUNDRY/Makefile.inc1	Wed Jun 14 02:46:38 2017	(r319931)
@@ -767,6 +767,17 @@ _worldtmp: .PHONY
 	fi
 .endif
 .endfor
+# 20170607 remove stale dependencies for utimens* wrappers removed in r319663
+.for f in futimens utimensat
+.if exists(${OBJTREE}${.CURDIR}/lib/libc/.depend.${f}.o)
+	@if egrep -q '/${f}.c' \
+	    ${OBJTREE}${.CURDIR}/lib/libc/.depend.${f}.o; then \
+		echo Removing stale dependencies for ${f} syscall wrappers; \
+		rm -f ${OBJTREE}${.CURDIR}/lib/libc/.depend.${f}.* \
+		   ${OBJTREE}${.CURDIR}/world32/${.CURDIR}/lib/libc/.depend.${f}.*; \
+	fi
+.endif
+.endfor
 # 20170523 remove stale generated asm files for functions which are no longer
 # syscalls after r302092 (pipe) and r318736 (others)
 .for f in getdents lstat mknod pipe stat

Modified: user/alc/PQ_LAUNDRY/ObsoleteFiles.inc
==============================================================================
--- user/alc/PQ_LAUNDRY/ObsoleteFiles.inc	Wed Jun 14 02:42:38 2017	(r319930)
+++ user/alc/PQ_LAUNDRY/ObsoleteFiles.inc	Wed Jun 14 02:46:38 2017	(r319931)
@@ -38,6 +38,8 @@
 #   xargs -n1 | sort | uniq -d;
 # done
 
+# 20170610: chown-f_test replaced by chown_test
+OLD_FILES+=usr/tests/usr.sbin/chown/chown-f_test
 # 20170609: drop obsolete manpage link (if_rtwn.ko -> rtwn.ko)
 OLD_FILES+=usr/share/man/man4/if_rtwn.4.gz
 # 20170531: removal of groff

Modified: user/alc/PQ_LAUNDRY/bin/df/df.c
==============================================================================
--- user/alc/PQ_LAUNDRY/bin/df/df.c	Wed Jun 14 02:42:38 2017	(r319930)
+++ user/alc/PQ_LAUNDRY/bin/df/df.c	Wed Jun 14 02:46:38 2017	(r319931)
@@ -490,7 +490,7 @@ prtstat(struct statfs *sfsp, struct maxwidths *mwp)
 		xo_emit("{T:/%-*s}", mwp->mntfrom, "Filesystem");
 		if (Tflag)
 			xo_emit("  {T:/%-*s}", mwp->fstype, "Type");
-		xo_emit(" {T:/%*s} {T:/%*s} {T:/%*s} Capacity",
+		xo_emit(" {T:/%*s} {T:/%*s} {T:/%*s} {T:Capacity}",
 			mwp->total, header,
 			mwp->used, "Used", mwp->avail, "Avail");
 		if (iflag) {

Modified: user/alc/PQ_LAUNDRY/bin/ln/ln.1
==============================================================================
--- user/alc/PQ_LAUNDRY/bin/ln/ln.1	Wed Jun 14 02:42:38 2017	(r319930)
+++ user/alc/PQ_LAUNDRY/bin/ln/ln.1	Wed Jun 14 02:46:38 2017	(r319931)
@@ -32,7 +32,7 @@
 .\"	@(#)ln.1	8.2 (Berkeley) 12/30/93
 .\" $FreeBSD$
 .\"
-.Dd November 2, 2012
+.Dd June 12, 2017
 .Dt LN 1
 .Os
 .Sh NAME
@@ -87,14 +87,18 @@ option should be used with either
 or
 .Fl i
 options.
-If none is specified,
+If neither
 .Fl f
+nor
+.Fl i
+is specified,
+.Fl f
 is implied.
 The
 .Fl F
 option is a no-op unless
 .Fl s
-option is specified.
+is specified.
 .It Fl L
 When creating a hard link to a symbolic link,
 create a hard link to the target of the symbolic link.

Modified: user/alc/PQ_LAUNDRY/bin/ln/tests/ln_test.sh
==============================================================================
--- user/alc/PQ_LAUNDRY/bin/ln/tests/ln_test.sh	Wed Jun 14 02:42:38 2017	(r319930)
+++ user/alc/PQ_LAUNDRY/bin/ln/tests/ln_test.sh	Wed Jun 14 02:46:38 2017	(r319931)
@@ -28,190 +28,217 @@
 
 set_umask()
 {
-        if ! umask 022; then
-                atf_fail "setting umask failed"
-        fi
+	if ! umask 022; then
+		atf_fail "setting umask failed"
+	fi
 }
 
 atf_test_case L_flag
 L_flag_head()
 {
-        atf_set "descr" "Verify that when creating a hard link to a " \
-                        "symbolic link, '-L' option creates a hard" \
-                        "link to the target of the symbolic link"
+	atf_set "descr" "Verify that when creating a hard link to a " \
+			"symbolic link, '-L' option creates a hard" \
+			"link to the target of the symbolic link"
 }
 
 L_flag_body()
 {
-        set_umask
-        atf_check touch A
-        atf_check ln -s A B
-        atf_check ln -L B C
-        stat_A=$(stat -f %i A)
-        stat_C=$(stat -f %i C)
-        atf_check_equal "$stat_A" "$stat_C"
-        atf_check -o inline:'B: symbolic link to A\n' file B
+	set_umask
+	atf_check touch A
+	atf_check ln -s A B
+	atf_check ln -L B C
+	stat_A=$(stat -f %i A)
+	stat_C=$(stat -f %i C)
+	atf_check_equal "$stat_A" "$stat_C"
+	atf_check -o inline:'Symbolic Link\n' stat -f %SHT B
+	atf_check -o inline:'A\n' readlink B
 }
 
 atf_test_case P_flag
 P_flag_head()
 {
-        atf_set "descr" "Verify that when creating a hard link to a " \
-                        "symbolic link, '-P' option creates a hard " \
-                        "link to the symbolic link itself"
+	atf_set "descr" "Verify that when creating a hard link to a " \
+			"symbolic link, '-P' option creates a hard " \
+			"link to the symbolic link itself"
 }
 
 P_flag_body()
 {
-        set_umask
-        atf_check touch A
-        atf_check ln -s A B
-        atf_check ln -P B C
-        stat_B=$(stat -f %i B)
-        stat_C=$(stat -f %i C)
-        atf_check_equal "$stat_B" "$stat_C"
+	set_umask
+	atf_check touch A
+	atf_check ln -s A B
+	atf_check ln -P B C
+	stat_B=$(stat -f %i B)
+	stat_C=$(stat -f %i C)
+	atf_check_equal "$stat_B" "$stat_C"
 }
 
 atf_test_case f_flag
 f_flag_head()
 {
-        atf_set "descr" "Verify that if the target file already exists, " \
-                        "'-f' option unlinks it so that link may occur"
+	atf_set "descr" "Verify that if the target file already exists, " \
+			"'-f' option unlinks it so that link may occur"
 }
 
 f_flag_body()
 {
-        set_umask
-        atf_check touch A B
-        atf_check ln -f A B
-        stat_A=$(stat -f %i A)
-        stat_B=$(stat -f %i B)
-        atf_check_equal "$stat_A" "$stat_B"
+	set_umask
+	atf_check touch A B
+	atf_check ln -f A B
+	stat_A=$(stat -f %i A)
+	stat_B=$(stat -f %i B)
+	atf_check_equal "$stat_A" "$stat_B"
 }
 
 atf_test_case target_exists_hard
 target_exists_hard_head()
 {
-        atf_set "descr" "Verify whether creating a hard link fails if the " \
-                        "target file already exists"
+	atf_set "descr" "Verify whether creating a hard link fails if the " \
+			"target file already exists"
 }
 
 target_exists_hard_body()
 {
-        atf_check touch A B
-        atf_check -s exit:1 -e inline:'ln: B: File exists\n' \
-                ln A B
+	set_umask
+	atf_check touch A B
+	atf_check -s exit:1 -e inline:'ln: B: File exists\n' \
+		ln A B
 }
 
 atf_test_case target_exists_symbolic
 target_exists_symbolic_head()
 {
-        atf_set "descr" "Verify whether creating a symbolic link fails if " \
-                        "the target file already exists"
+	atf_set "descr" "Verify whether creating a symbolic link fails if " \
+			"the target file already exists"
 }
 
 target_exists_symbolic_body()
 {
-        atf_check touch A B
-        atf_check -s exit:1 -e inline:'ln: B: File exists\n' \
-                ln -s A B
+	set_umask
+	atf_check touch A B
+	atf_check -s exit:1 -e inline:'ln: B: File exists\n' \
+		ln -s A B
 }
 
 atf_test_case shf_flag_dir
 shf_flag_dir_head() {
-        atf_set "descr" "Verify that if the target directory is a symbolic " \
-                        "link, '-shf' option prevents following the link"
+	atf_set "descr" "Verify that if the target directory is a symbolic " \
+			"link, '-shf' option prevents following the link"
 }
 
 shf_flag_dir_body()
 {
-        atf_check mkdir -m 0777 A B
-        atf_check ln -s A C
-        atf_check ln -shf B C
-        atf_check -o inline:'C: symbolic link to B\n' file C
+	atf_check mkdir -m 0777 A B
+	atf_check ln -s A C
+	atf_check ln -shf B C
+	atf_check -o inline:'Symbolic Link\n' stat -f %SHT C
+	atf_check -o inline:'B\n' readlink C
 }
 
 atf_test_case snf_flag_dir
 snf_flag_dir_head() {
-        atf_set "descr" "Verify that if the target directory is a symbolic " \
-                        "link, '-snf' option prevents following the link"
+	atf_set "descr" "Verify that if the target directory is a symbolic " \
+			"link, '-snf' option prevents following the link"
 }
 
 snf_flag_dir_body()
 {
-        atf_check mkdir -m 0777 A B
-        atf_check ln -s A C
-        atf_check ln -snf B C
-        atf_check -o inline:'C: symbolic link to B\n' file C
+	atf_check mkdir -m 0777 A B
+	atf_check ln -s A C
+	atf_check ln -snf B C
+	atf_check -o inline:'Symbolic Link\n' stat -f %SHT C
+	atf_check -o inline:'B\n' readlink C
 }
 
+atf_test_case sF_flag
+sF_flag_head()
+{
+	atf_set "descr" "Verify that if the target file already exists " \
+			"and is a directory, then '-sF' option removes " \
+			"it so that the link may occur"
+}
+
+sF_flag_body()
+{
+	atf_expect_fail "B isn't being unlinked (bug 219943)"
+	atf_check mkdir A B
+	atf_check ln -sF A B
+	atf_check -o inline:'Symbolic Link\n' stat -f %SHT B
+}
+
 atf_test_case sf_flag
 sf_flag_head()
 {
-        atf_set "descr" "Verify that if the target file already exists, " \
-                        "'-sf' option unlinks it and creates a symbolic link " \
-                        "to the source file"
+	atf_set "descr" "Verify that if the target file already exists, " \
+			"'-sf' option unlinks it and creates a symbolic link " \
+			"to the source file"
 }
 
 sf_flag_body()
 {
-        atf_check touch A B
-        atf_check ln -sf A B
-        atf_check -o inline:'B: symbolic link to A\n' file B
+	set_umask
+	atf_check touch A B
+	atf_check ln -sf A B
+	atf_check -o inline:'Symbolic Link\n' stat -f %SHT B
+	atf_check -o inline:'A\n' readlink B
 }
 
 atf_test_case s_flag
 s_flag_head()
 {
-        atf_set "descr" "Verify that '-s' option creates a symbolic link"
+	atf_set "descr" "Verify that '-s' option creates a symbolic link"
 }
 
 s_flag_body()
 {
-        set_umask
-        atf_check touch A
-        atf_check ln -s A B
-        atf_check -o inline:'B: symbolic link to A\n' file B
+	set_umask
+	atf_check touch A
+	atf_check ln -s A B
+	atf_check -o inline:'Symbolic Link\n' stat -f %SHT B
+	atf_check -o inline:'A\n' readlink B
 }
 
 atf_test_case s_flag_broken
 s_flag_broken_head()
 {
-        atf_set "descr" "Verify that if the source file does not exists, '-s' " \
-                        "option creates a broken symbolic link to the source file"
+	atf_set "descr" "Verify that if the source file does not exists, '-s' " \
+			"option creates a broken symbolic link to the source file"
 }
 
 s_flag_broken_body()
 {
-        atf_check ln -s A B
-        atf_check -o inline:'B: broken symbolic link to A\n' file B
+	atf_check ln -s A B
+	atf_check -o inline:'Symbolic Link\n' stat -f %SHT B
+	atf_check -o inline:'A\n' readlink B
 }
 
 atf_test_case sw_flag
 sw_flag_head()
 {
-        atf_set "descr" "Verify that '-sw' option produces a warning if the " \
-                        "source of a symbolic link does not currently exist"
+	atf_set "descr" "Verify that '-sw' option produces a warning if the " \
+			"source of a symbolic link does not currently exist"
 }
 
 sw_flag_body()
 {
-        atf_check -s exit:0 -e inline:'ln: warning: A: No such file or directory\n' \
-                ln -sw A B
-        atf_check -o inline:'B: broken symbolic link to A\n' file B
+	atf_check -s exit:0 -e inline:'ln: warning: A: No such file or directory\n' \
+		ln -sw A B
+	atf_check -o inline:'Symbolic Link\n' stat -f %SHT B
+	atf_check -o inline:'A\n' readlink B
 }
 
 atf_init_test_cases()
 {
-        atf_add_test_case L_flag
-        atf_add_test_case P_flag
-        atf_add_test_case f_flag
-        atf_add_test_case target_exists_hard
-        atf_add_test_case target_exists_symbolic
-        atf_add_test_case shf_flag_dir
-        atf_add_test_case snf_flag_dir
-        atf_add_test_case sf_flag
-        atf_add_test_case s_flag
-        atf_add_test_case s_flag_broken
-        atf_add_test_case sw_flag
+	atf_add_test_case L_flag
+	atf_add_test_case P_flag
+	atf_add_test_case f_flag
+	atf_add_test_case target_exists_hard
+	atf_add_test_case target_exists_symbolic
+	atf_add_test_case shf_flag_dir
+	atf_add_test_case snf_flag_dir
+	atf_add_test_case sF_flag
+	atf_add_test_case sf_flag
+	atf_add_test_case s_flag
+	atf_add_test_case s_flag_broken
+	atf_add_test_case sw_flag
 }

Modified: user/alc/PQ_LAUNDRY/contrib/ipfilter/tools/ippool.c
==============================================================================
--- user/alc/PQ_LAUNDRY/contrib/ipfilter/tools/ippool.c	Wed Jun 14 02:42:38 2017	(r319930)
+++ user/alc/PQ_LAUNDRY/contrib/ipfilter/tools/ippool.c	Wed Jun 14 02:46:38 2017	(r319931)
@@ -128,9 +128,6 @@ main(argc, argv)
 	case 's' :
 		err = poolstats(argc, argv);
 		break;
-	case 'v' :
-		opts |= OPT_VERBOSE;
-		break;
 	default :
 		exit(1);
 	}

Modified: user/alc/PQ_LAUNDRY/contrib/llvm/tools/lld/ELF/ICF.cpp
==============================================================================
--- user/alc/PQ_LAUNDRY/contrib/llvm/tools/lld/ELF/ICF.cpp	Wed Jun 14 02:42:38 2017	(r319930)
+++ user/alc/PQ_LAUNDRY/contrib/llvm/tools/lld/ELF/ICF.cpp	Wed Jun 14 02:46:38 2017	(r319931)
@@ -245,7 +245,6 @@ bool ICF<ELFT>::variableEq(const InputSection<ELFT> *A
     if (&SA == &SB)
       return true;
 
-    // Or, the two sections must be in the same equivalence class.
     auto *DA = dyn_cast<DefinedRegular<ELFT>>(&SA);
     auto *DB = dyn_cast<DefinedRegular<ELFT>>(&SB);
     if (!DA || !DB)
@@ -253,6 +252,11 @@ bool ICF<ELFT>::variableEq(const InputSection<ELFT> *A
     if (DA->Value != DB->Value)
       return false;
 
+    // Either both symbols must be absolute...
+    if (!DA->Section || !DB->Section)
+      return !DA->Section && !DB->Section;
+
+    // Or the two sections must be in the same equivalence class.
     auto *X = dyn_cast<InputSection<ELFT>>(DA->Section);
     auto *Y = dyn_cast<InputSection<ELFT>>(DB->Section);
     if (!X || !Y)

Modified: user/alc/PQ_LAUNDRY/etc/mtree/BSD.tests.dist
==============================================================================
--- user/alc/PQ_LAUNDRY/etc/mtree/BSD.tests.dist	Wed Jun 14 02:42:38 2017	(r319930)
+++ user/alc/PQ_LAUNDRY/etc/mtree/BSD.tests.dist	Wed Jun 14 02:46:38 2017	(r319931)
@@ -628,6 +628,8 @@
         ..
         dirname
         ..
+        du
+        ..
         file2c
         ..
         getconf
@@ -669,6 +671,8 @@
             ..
         ..
         soelim
+        ..
+        stat
         ..
         tail
         ..

Modified: user/alc/PQ_LAUNDRY/etc/rc.d/sendmail
==============================================================================
--- user/alc/PQ_LAUNDRY/etc/rc.d/sendmail	Wed Jun 14 02:42:38 2017	(r319930)
+++ user/alc/PQ_LAUNDRY/etc/rc.d/sendmail	Wed Jun 14 02:46:38 2017	(r319931)
@@ -206,12 +206,14 @@ required_files=
 if checkyesno sendmail_submit_enable; then
 	name="sendmail_submit"
 	rcvar="sendmail_submit_enable"
+	_rc_restart_done=false
 	run_rc_command "$1"
 fi
 
 if checkyesno sendmail_outbound_enable; then
 	name="sendmail_outbound"
 	rcvar="sendmail_outbound_enable"
+	_rc_restart_done=false
 	run_rc_command "$1"
 fi
 
@@ -219,4 +221,5 @@ name="sendmail_msp_queue"
 rcvar="sendmail_msp_queue_enable"
 pidfile="${sendmail_msp_queue_pidfile:-/var/spool/clientmqueue/sm-client.pid}"
 required_files="/etc/mail/submit.cf"
+_rc_restart_done=false
 run_rc_command "$1"

Modified: user/alc/PQ_LAUNDRY/lib/clang/libclang/Makefile
==============================================================================
--- user/alc/PQ_LAUNDRY/lib/clang/libclang/Makefile	Wed Jun 14 02:42:38 2017	(r319930)
+++ user/alc/PQ_LAUNDRY/lib/clang/libclang/Makefile	Wed Jun 14 02:46:38 2017	(r319931)
@@ -127,6 +127,7 @@ SRCS_MIN+=	Analysis/ReachableCode.cpp
 SRCS_MIN+=	Analysis/ScanfFormatString.cpp
 SRCS_MIN+=	Analysis/ThreadSafety.cpp
 SRCS_MIN+=	Analysis/ThreadSafetyCommon.cpp
+SRCS_MIN+=	Analysis/ThreadSafetyLogical.cpp
 SRCS_MIN+=	Analysis/ThreadSafetyTIL.cpp
 SRCS_MIN+=	Analysis/UninitializedValues.cpp
 SRCS_MIN+=	Basic/Attributes.cpp
@@ -271,6 +272,8 @@ SRCS_MIN+=	Frontend/Rewrite/FrontendActions.cpp
 SRCS_MIN+=	Frontend/Rewrite/HTMLPrint.cpp
 SRCS_MIN+=	Frontend/Rewrite/InclusionRewriter.cpp
 SRCS_MIN+=	Frontend/Rewrite/RewriteMacros.cpp
+SRCS_MIN+=	Frontend/Rewrite/RewriteModernObjC.cpp
+SRCS_MIN+=	Frontend/Rewrite/RewriteObjC.cpp
 SRCS_MIN+=	Frontend/Rewrite/RewriteTest.cpp
 SRCS_MIN+=	Frontend/SerializedDiagnosticPrinter.cpp
 SRCS_MIN+=	Frontend/SerializedDiagnosticReader.cpp

Modified: user/alc/PQ_LAUNDRY/lib/clang/liblldb/Makefile
==============================================================================
--- user/alc/PQ_LAUNDRY/lib/clang/liblldb/Makefile	Wed Jun 14 02:42:38 2017	(r319930)
+++ user/alc/PQ_LAUNDRY/lib/clang/liblldb/Makefile	Wed Jun 14 02:46:38 2017	(r319931)
@@ -31,6 +31,7 @@ SRCS+=		API/SBEvent.cpp
 SRCS+=		API/SBExecutionContext.cpp
 SRCS+=		API/SBExpressionOptions.cpp
 SRCS+=		API/SBFileSpec.cpp
+SRCS+=		API/SBFileSpecList.cpp
 SRCS+=		API/SBFrame.cpp
 SRCS+=		API/SBFunction.cpp
 SRCS+=		API/SBHostOS.cpp
@@ -41,6 +42,7 @@ SRCS+=		API/SBLaunchInfo.cpp
 SRCS+=		API/SBLineEntry.cpp
 SRCS+=		API/SBListener.cpp
 SRCS+=		API/SBMemoryRegionInfo.cpp
+SRCS+=		API/SBMemoryRegionInfoList.cpp
 SRCS+=		API/SBModule.cpp
 SRCS+=		API/SBModuleSpec.cpp
 SRCS+=		API/SBPlatform.cpp
@@ -69,6 +71,7 @@ SRCS+=		API/SBTypeSummary.cpp
 SRCS+=		API/SBUnixSignals.cpp
 SRCS+=		API/SBValue.cpp
 SRCS+=		API/SBValueList.cpp
+SRCS+=		API/SBVariablesOptions.cpp
 SRCS+=		API/SBWatchpoint.cpp
 SRCS+=		API/SystemInitializerFull.cpp
 SRCS+=		Breakpoint/Breakpoint.cpp

Modified: user/alc/PQ_LAUNDRY/lib/clang/libllvm/Makefile
==============================================================================
--- user/alc/PQ_LAUNDRY/lib/clang/libllvm/Makefile	Wed Jun 14 02:42:38 2017	(r319930)
+++ user/alc/PQ_LAUNDRY/lib/clang/libllvm/Makefile	Wed Jun 14 02:46:38 2017	(r319931)
@@ -656,7 +656,7 @@ SRCS_MIN+=	Support/Regex.cpp
 SRCS_MIN+=	Support/SHA1.cpp
 SRCS_MIN+=	Support/ScaledNumber.cpp
 SRCS_MIN+=	Support/ScopedPrinter.cpp
-SRCS_LDB+=	Support/SearchForAddressOfSpecialSymbol.cpp
+SRCS_MIN+=	Support/SearchForAddressOfSpecialSymbol.cpp
 SRCS_MIN+=	Support/Signals.cpp
 SRCS_MIN+=	Support/SmallPtrSet.cpp
 SRCS_MIN+=	Support/SmallVector.cpp
@@ -1160,9 +1160,6 @@ SRCS_ALL+=	${SRCS_EXL}
 .endif
 .if ${MK_LLD} != "no"
 SRCS_ALL+=	${SRCS_LLD}
-.endif
-.if ${MK_LLDB} != "no"
-SRCS_ALL+=	${SRCS_LDB}
 .endif
 .if ${MK_CLANG_EXTRAS} != "no" || ${MK_LLDB} != "no"
 SRCS_ALL+=	${SRCS_XDB}

Modified: user/alc/PQ_LAUNDRY/lib/libc/gen/getbsize.3
==============================================================================
--- user/alc/PQ_LAUNDRY/lib/libc/gen/getbsize.3	Wed Jun 14 02:42:38 2017	(r319930)
+++ user/alc/PQ_LAUNDRY/lib/libc/gen/getbsize.3	Wed Jun 14 02:46:38 2017	(r319931)
@@ -28,7 +28,7 @@
 .\"     @(#)getbsize.3	8.1 (Berkeley) 6/4/93
 .\" $FreeBSD$
 .\"
-.Dd November 16, 2012
+.Dd June 11, 2017
 .Dt GETBSIZE 3
 .Os
 .Sh NAME
@@ -67,7 +67,8 @@ Sizes less than 512 bytes are rounded up to 512 bytes,
 greater than 1 GB are rounded down to 1 GB.
 In each case
 .Fn getbsize
-produces a warning message.
+produces a warning message via
+.Xr warnx 3 .
 .Pp
 The
 .Fn getbsize

Modified: user/alc/PQ_LAUNDRY/lib/libc/sys/ptrace.2
==============================================================================
--- user/alc/PQ_LAUNDRY/lib/libc/sys/ptrace.2	Wed Jun 14 02:42:38 2017	(r319930)
+++ user/alc/PQ_LAUNDRY/lib/libc/sys/ptrace.2	Wed Jun 14 02:46:38 2017	(r319931)
@@ -2,7 +2,7 @@
 .\"	$NetBSD: ptrace.2,v 1.2 1995/02/27 12:35:37 cgd Exp $
 .\"
 .\" This file is in the public domain.
-.Dd August 29, 2016
+.Dd June 11, 2017
 .Dt PTRACE 2
 .Os
 .Sh NAME
@@ -643,6 +643,26 @@ and
 .Fa data
 arguments are used the same as for
 .Dv PT_CONTINUE.
+.It Dv PT_GET_SC_ARGS
+For the thread which is stopped in either
+.Dv PL_FLAG_SCE
+or
+.Dv PL_FLAG_SCX
+state, that is, on entry or exit to a syscall,
+this request fetches the syscall arguments.
+.Pp
+The arguments are copied out into the buffer pointed to by the
+.Fa addr
+pointer, sequentially.
+Each syscall argument is stored as the machine word.
+Kernel copies out as many arguments as the syscall accepts,
+see the
+.Va pl_syscall_narg
+member of the
+.Vt struct ptrace_lwpinfo ,
+but not more than the
+.Fa data
+bytes in total are copied.
 .It Dv PT_FOLLOW_FORK
 This request controls tracing for new child processes of a traced process.
 If

Modified: user/alc/PQ_LAUNDRY/lib/libcam/tests/libcam_test.c
==============================================================================
--- user/alc/PQ_LAUNDRY/lib/libcam/tests/libcam_test.c	Wed Jun 14 02:42:38 2017	(r319930)
+++ user/alc/PQ_LAUNDRY/lib/libcam/tests/libcam_test.c	Wed Jun 14 02:46:38 2017	(r319931)
@@ -58,6 +58,75 @@ cam_has_error(void)
 	return (strlen(cam_errbuf) != 0);
 }
 
+ATF_TC_WITHOUT_HEAD(cam_get_device_negative_test_NULL_path);
+ATF_TC_BODY(cam_get_device_negative_test_NULL_path, tc)
+{
+	char parsed_dev_name[DEV_IDLEN + 1];
+	int parsed_unit;
+
+	ATF_REQUIRE_MSG(cam_get_device(NULL, parsed_dev_name,
+	    nitems(parsed_dev_name), &parsed_unit) == -1,
+	    "cam_get_device succeeded unexpectedly");
+}
+
+ATF_TC_WITHOUT_HEAD(cam_get_device_negative_test_bad_path);
+ATF_TC_BODY(cam_get_device_negative_test_bad_path, tc)
+{
+	char parsed_dev_name[DEV_IDLEN + 1];
+	int parsed_unit;
+
+	ATF_REQUIRE_MSG(cam_get_device("1ada", parsed_dev_name,
+	    nitems(parsed_dev_name), &parsed_unit) == -1,
+	    "cam_get_device succeeded unexpectedly");
+}
+
+ATF_TC_WITHOUT_HEAD(cam_get_device_negative_test_nul_path);
+ATF_TC_BODY(cam_get_device_negative_test_nul_path, tc)
+{
+	char parsed_dev_name[DEV_IDLEN + 1];
+	int parsed_unit;
+
+	ATF_REQUIRE_MSG(cam_get_device("", parsed_dev_name,
+	    nitems(parsed_dev_name), &parsed_unit) == -1,
+	    "cam_get_device succeeded unexpectedly");
+}
+
+ATF_TC_WITHOUT_HEAD(cam_get_device_negative_test_root);
+ATF_TC_BODY(cam_get_device_negative_test_root, tc)
+{
+	char parsed_dev_name[DEV_IDLEN + 1];
+	int parsed_unit;
+
+	ATF_REQUIRE_MSG(cam_get_device("/", parsed_dev_name,
+	    nitems(parsed_dev_name), &parsed_unit) == -1,
+	    "cam_get_device succeeded unexpectedly");
+}
+
+ATF_TC_WITHOUT_HEAD(cam_get_device_positive_test);
+ATF_TC_BODY(cam_get_device_positive_test, tc)
+{
+	char expected_dev_name[] = "foo";
+	char parsed_dev_name[DEV_IDLEN + 1];
+	int expected_unit, parsed_unit;
+
+	expected_unit = 1;
+
+	ATF_REQUIRE_MSG(cam_get_device("/dev/foo1", parsed_dev_name,
+	    nitems(parsed_dev_name), &parsed_unit) == 0,
+	    "cam_get_device failed");
+	ATF_REQUIRE_STREQ(parsed_dev_name, expected_dev_name);
+	ATF_REQUIRE(parsed_unit == expected_unit);
+
+	strcpy(parsed_dev_name, "");
+	parsed_unit = -1;
+
+	ATF_REQUIRE_MSG(cam_get_device("foo1", parsed_dev_name,
+	    nitems(parsed_dev_name), &parsed_unit) == 0,
+	    "cam_get_device failed");
+	ATF_REQUIRE_STREQ(parsed_dev_name, expected_dev_name);
+	ATF_REQUIRE(parsed_unit == expected_unit);
+}
+
 ATF_TC(cam_open_device_negative_test_O_RDONLY);
 ATF_TC_HEAD(cam_open_device_negative_test_O_RDONLY, tc)
 {
@@ -206,6 +275,11 @@ ATF_TC_BODY(cam_freeccb_negative_test_NULL, tc)
 ATF_TP_ADD_TCS(tp)
 {
 
+	ATF_TP_ADD_TC(tp, cam_get_device_negative_test_NULL_path);
+	ATF_TP_ADD_TC(tp, cam_get_device_negative_test_bad_path);
+	ATF_TP_ADD_TC(tp, cam_get_device_negative_test_nul_path);
+	ATF_TP_ADD_TC(tp, cam_get_device_negative_test_root);
+	ATF_TP_ADD_TC(tp, cam_get_device_positive_test);
 	ATF_TP_ADD_TC(tp, cam_open_device_negative_test_O_RDONLY);
 	ATF_TP_ADD_TC(tp, cam_open_device_negative_test_nonexistent);
 	ATF_TP_ADD_TC(tp, cam_open_device_negative_test_unprivileged);

Modified: user/alc/PQ_LAUNDRY/sbin/ipfw/dummynet.c
==============================================================================
--- user/alc/PQ_LAUNDRY/sbin/ipfw/dummynet.c	Wed Jun 14 02:42:38 2017	(r319930)
+++ user/alc/PQ_LAUNDRY/sbin/ipfw/dummynet.c	Wed Jun 14 02:46:38 2017	(r319931)
@@ -805,8 +805,7 @@ read_bandwidth(char *arg, int *bandwidth, char *if_nam
 			warn("interface name truncated");
 		namelen--;
 		/* interface name */
-		strncpy(if_name, arg, namelen);
-		if_name[namelen] = '\0';
+		strlcpy(if_name, arg, namelen);
 		*bandwidth = 0;
 	} else {	/* read bandwidth value */
 		int bw;
@@ -933,8 +932,7 @@ load_extra_delays(const char *filename, struct dn_prof
 		} else if (!strcasecmp(name, ED_TOK_NAME)) {
 		    if (profile_name[0] != '\0')
 			errx(ED_EFMT("duplicated token: %s"), name);
-		    strncpy(profile_name, arg, sizeof(profile_name) - 1);
-		    profile_name[sizeof(profile_name)-1] = '\0';
+		    strlcpy(profile_name, arg, sizeof(profile_name));
 		    do_points = 0;
 		} else if (!strcasecmp(name, ED_TOK_DELAY)) {
 		    if (do_points)
@@ -1005,7 +1003,7 @@ load_extra_delays(const char *filename, struct dn_prof
 	}
 	p->samples_no = samples;
 	p->loss_level = loss * samples;
-	strncpy(p->name, profile_name, sizeof(p->name));
+	strlcpy(p->name, profile_name, sizeof(p->name));
 }
 
 #ifdef NEW_AQM
@@ -1568,7 +1566,8 @@ end_mask:
 			fs->flags &= ~(DN_IS_RED|DN_IS_GENTLE_RED);
 			fs->flags |= DN_IS_AQM;
 
-			strcpy(aqm_extra->name,av[-1]);
+			strlcpy(aqm_extra->name, av[-1],
+			    sizeof(aqm_extra->name));
 			aqm_extra->oid.subtype = DN_AQM_PARAMS;
 
 			process_extra_parms(&ac, av, aqm_extra, tok);
@@ -1580,7 +1579,8 @@ end_mask:
 				errx(EX_DATAERR, "use type before fq_codel/fq_pie");
 
 			NEED(sch, "fq_codel/fq_pie is only for schd");
-			strcpy(sch_extra->name,av[-1]);
+			strlcpy(sch_extra->name, av[-1],
+			    sizeof(sch_extra->name));
 			sch_extra->oid.subtype = DN_SCH_PARAMS;
 			process_extra_parms(&ac, av, sch_extra, tok);
 			break;
@@ -1649,14 +1649,15 @@ end_mask:
 			l = strlen(av[0]);
 			if (l == 0 || l > 15)
 				errx(1, "type %s too long\n", av[0]);
-			strcpy(sch->name, av[0]);
+			strlcpy(sch->name, av[0], sizeof(sch->name));
 			sch->oid.subtype = 0; /* use string */
 #ifdef NEW_AQM
 			/* if fq_codel is selected, consider all tokens after it
 			 * as parameters
 			 */
 			if (!strcasecmp(av[0],"fq_codel") || !strcasecmp(av[0],"fq_pie")){
-				strcpy(sch_extra->name,av[0]);
+				strlcpy(sch_extra->name, av[0],
+				    sizeof(sch_extra->name));
 				sch_extra->oid.subtype = DN_SCH_PARAMS;
 				process_extra_parms(&ac, av, sch_extra, tok);
 			} else {

Modified: user/alc/PQ_LAUNDRY/share/misc/committers-src.dot
==============================================================================
--- user/alc/PQ_LAUNDRY/share/misc/committers-src.dot	Wed Jun 14 02:42:38 2017	(r319930)
+++ user/alc/PQ_LAUNDRY/share/misc/committers-src.dot	Wed Jun 14 02:46:38 2017	(r319931)
@@ -276,6 +276,7 @@ rdivacky [label="Roman Divacky\nrdivacky@FreeBSD.org\n
 remko [label="Remko Lodder\nremko@FreeBSD.org\n2007/02/23"]
 rgrimes [label="Rodney W. Grimes\nrgrimes@FreeBSD.org\n1993/06/12\n2017/03/03"]
 rik [label="Roman Kurakin\nrik@FreeBSD.org\n2003/12/18"]
+rlibby [label="Ryan Libby\nrlibby@FreeBSD.org\n2017/06/07"]
 rmacklem [label="Rick Macklem\nrmacklem@FreeBSD.org\n2009/03/27"]
 rmh [label="Robert Millan\nrmh@FreeBSD.org\n2011/09/18"]
 rnoland [label="Robert Noland\nrnoland@FreeBSD.org\n2008/09/15"]
@@ -635,6 +636,7 @@ marcel -> nwhitehorn
 marcel -> sjg
 
 markj -> cem
+markj -> rlibby
 
 markm -> jasone
 markm -> sheldonh

Modified: user/alc/PQ_LAUNDRY/share/mk/local.sys.mk
==============================================================================
--- user/alc/PQ_LAUNDRY/share/mk/local.sys.mk	Wed Jun 14 02:42:38 2017	(r319930)
+++ user/alc/PQ_LAUNDRY/share/mk/local.sys.mk	Wed Jun 14 02:46:38 2017	(r319931)
@@ -13,7 +13,9 @@ MAKE_PRINT_VAR_ON_ERROR += \
 	.MAKE.MODE
 .endif
 
+_ERROR_CMD=${sed -n '/^CMD/s,^CMD ,,p' ${.ERROR_META_FILE}:L:sh}
 MAKE_PRINT_VAR_ON_ERROR+= \
+	_ERROR_CMD \
 	.CURDIR \
 	.MAKE \
 	.OBJDIR \

Modified: user/alc/PQ_LAUNDRY/share/mk/sys.mk
==============================================================================
--- user/alc/PQ_LAUNDRY/share/mk/sys.mk	Wed Jun 14 02:42:38 2017	(r319930)
+++ user/alc/PQ_LAUNDRY/share/mk/sys.mk	Wed Jun 14 02:46:38 2017	(r319931)
@@ -59,7 +59,7 @@ META_MODE+=	missing-meta=yes
 .if !defined(NO_SILENT)
 META_MODE+=	silent=yes
 .endif
-.if !exists(/dev/filemon)
+.if !exists(/dev/filemon) || defined(NO_FILEMON)
 META_MODE+= nofilemon
 .endif
 # Require filemon data with bmake

Modified: user/alc/PQ_LAUNDRY/sys/amd64/amd64/trap.c
==============================================================================
--- user/alc/PQ_LAUNDRY/sys/amd64/amd64/trap.c	Wed Jun 14 02:42:38 2017	(r319930)
+++ user/alc/PQ_LAUNDRY/sys/amd64/amd64/trap.c	Wed Jun 14 02:46:38 2017	(r319931)
@@ -829,16 +829,18 @@ dblfault_handler(struct trapframe *frame)
 }
 
 int
-cpu_fetch_syscall_args(struct thread *td, struct syscall_args *sa)
+cpu_fetch_syscall_args(struct thread *td)
 {
 	struct proc *p;
 	struct trapframe *frame;
 	register_t *argp;
+	struct syscall_args *sa;
 	caddr_t params;
 	int reg, regcnt, error;
 
 	p = td->td_proc;
 	frame = td->td_frame;
+	sa = &td->td_sa;
 	reg = 0;
 	regcnt = 6;
 
@@ -889,7 +891,6 @@ cpu_fetch_syscall_args(struct thread *td, struct sysca
 void
 amd64_syscall(struct thread *td, int traced)
 {
-	struct syscall_args sa;
 	int error;
 	ksiginfo_t ksi;
 
@@ -899,7 +900,7 @@ amd64_syscall(struct thread *td, int traced)
 		/* NOT REACHED */
 	}
 #endif
-	error = syscallenter(td, &sa);
+	error = syscallenter(td);
 
 	/*
 	 * Traced syscall.
@@ -915,15 +916,16 @@ amd64_syscall(struct thread *td, int traced)
 
 	KASSERT(PCB_USER_FPU(td->td_pcb),
 	    ("System call %s returning with kernel FPU ctx leaked",
-	     syscallname(td->td_proc, sa.code)));
+	     syscallname(td->td_proc, td->td_sa.code)));
 	KASSERT(td->td_pcb->pcb_save == get_pcb_user_save_td(td),
 	    ("System call %s returning with mangled pcb_save",
-	     syscallname(td->td_proc, sa.code)));
+	     syscallname(td->td_proc, td->td_sa.code)));
 	KASSERT(td->td_md.md_invl_gen.gen == 0,
 	    ("System call %s returning with leaked invl_gen %lu",
-	    syscallname(td->td_proc, sa.code), td->td_md.md_invl_gen.gen));
+	    syscallname(td->td_proc, td->td_sa.code),
+	    td->td_md.md_invl_gen.gen));
 
-	syscallret(td, error, &sa);
+	syscallret(td, error);
 
 	/*
 	 * If the user-supplied value of %rip is not a canonical

Modified: user/alc/PQ_LAUNDRY/sys/amd64/cloudabi32/cloudabi32_sysvec.c
==============================================================================
--- user/alc/PQ_LAUNDRY/sys/amd64/cloudabi32/cloudabi32_sysvec.c	Wed Jun 14 02:42:38 2017	(r319930)
+++ user/alc/PQ_LAUNDRY/sys/amd64/cloudabi32/cloudabi32_sysvec.c	Wed Jun 14 02:46:38 2017	(r319931)
@@ -90,10 +90,14 @@ cloudabi32_proc_setregs(struct thread *td, struct imag
 }
 
 static int
-cloudabi32_fetch_syscall_args(struct thread *td, struct syscall_args *sa)
+cloudabi32_fetch_syscall_args(struct thread *td)
 {
-	struct trapframe *frame = td->td_frame;
+	struct trapframe *frame;
+	struct syscall_args *sa;
 	int error;
+
+	frame = td->td_frame;
+	sa = &td->td_sa;
 
 	/* Obtain system call number. */
 	sa->code = frame->tf_rax;

Modified: user/alc/PQ_LAUNDRY/sys/amd64/cloudabi64/cloudabi64_sysvec.c
==============================================================================
--- user/alc/PQ_LAUNDRY/sys/amd64/cloudabi64/cloudabi64_sysvec.c	Wed Jun 14 02:42:38 2017	(r319930)
+++ user/alc/PQ_LAUNDRY/sys/amd64/cloudabi64/cloudabi64_sysvec.c	Wed Jun 14 02:46:38 2017	(r319931)
@@ -87,9 +87,13 @@ cloudabi64_proc_setregs(struct thread *td, struct imag
 }
 
 static int
-cloudabi64_fetch_syscall_args(struct thread *td, struct syscall_args *sa)
+cloudabi64_fetch_syscall_args(struct thread *td)
 {
-	struct trapframe *frame = td->td_frame;
+	struct trapframe *frame;
+	struct syscall_args *sa;
+
+	frame = td->td_frame;
+	sa = &td->td_sa;
 
 	/* Obtain system call number. */
 	sa->code = frame->tf_rax;

Modified: user/alc/PQ_LAUNDRY/sys/amd64/ia32/ia32_syscall.c
==============================================================================
--- user/alc/PQ_LAUNDRY/sys/amd64/ia32/ia32_syscall.c	Wed Jun 14 02:42:38 2017	(r319930)
+++ user/alc/PQ_LAUNDRY/sys/amd64/ia32/ia32_syscall.c	Wed Jun 14 02:46:38 2017	(r319931)
@@ -105,16 +105,18 @@ ia32_set_syscall_retval(struct thread *td, int error)
 }
 
 int
-ia32_fetch_syscall_args(struct thread *td, struct syscall_args *sa)
+ia32_fetch_syscall_args(struct thread *td)
 {
 	struct proc *p;
 	struct trapframe *frame;
+	struct syscall_args *sa;
 	caddr_t params;
 	u_int32_t args[8], tmp;
 	int error, i;
 
 	p = td->td_proc;
 	frame = td->td_frame;
+	sa = &td->td_sa;
 
 	params = (caddr_t)frame->tf_rsp + sizeof(u_int32_t);
 	sa->code = frame->tf_rax;
@@ -175,7 +177,6 @@ void
 ia32_syscall(struct trapframe *frame)
 {
 	struct thread *td;
-	struct syscall_args sa;
 	register_t orig_tf_rflags;
 	int error;
 	ksiginfo_t ksi;
@@ -184,7 +185,7 @@ ia32_syscall(struct trapframe *frame)
 	td = curthread;
 	td->td_frame = frame;
 
-	error = syscallenter(td, &sa);
+	error = syscallenter(td);
 
 	/*
 	 * Traced syscall.
@@ -198,7 +199,7 @@ ia32_syscall(struct trapframe *frame)
 		trapsignal(td, &ksi);
 	}
 
-	syscallret(td, error, &sa);
+	syscallret(td, error);
 }
 
 static void

Modified: user/alc/PQ_LAUNDRY/sys/amd64/include/proc.h
==============================================================================
--- user/alc/PQ_LAUNDRY/sys/amd64/include/proc.h	Wed Jun 14 02:42:38 2017	(r319930)
+++ user/alc/PQ_LAUNDRY/sys/amd64/include/proc.h	Wed Jun 14 02:46:38 2017	(r319931)
@@ -70,6 +70,13 @@ struct mdproc {
 #define	KINFO_PROC_SIZE 1088
 #define	KINFO_PROC32_SIZE 768
 
+struct syscall_args {
+	u_int code;
+	struct sysent *callp;
+	register_t args[8];
+	int narg;
+};
+
 #ifdef	_KERNEL
 
 /* Get the current kernel thread stack usage. */
@@ -92,13 +99,6 @@ int amd64_set_ldt_data(struct thread *td, int start, i
 
 extern struct mtx dt_lock;
 extern int max_ldt_segment;
-
-struct syscall_args {
-	u_int code;
-	struct sysent *callp;
-	register_t args[8];
-	int narg;
-};
 #endif  /* _KERNEL */
 
 #endif /* !_MACHINE_PROC_H_ */

Modified: user/alc/PQ_LAUNDRY/sys/amd64/linux/linux_sysvec.c
==============================================================================
--- user/alc/PQ_LAUNDRY/sys/amd64/linux/linux_sysvec.c	Wed Jun 14 02:42:38 2017	(r319930)
+++ user/alc/PQ_LAUNDRY/sys/amd64/linux/linux_sysvec.c	Wed Jun 14 02:46:38 2017	(r319931)
@@ -126,7 +126,7 @@ static boolean_t linux_trans_osrel(const Elf_Note *not
 static void	linux_vdso_install(void *param);
 static void	linux_vdso_deinstall(void *param);
 static void	linux_set_syscall_retval(struct thread *td, int error);
-static int	linux_fetch_syscall_args(struct thread *td, struct syscall_args *sa);
+static int	linux_fetch_syscall_args(struct thread *td);
 static void	linux_exec_setregs(struct thread *td, struct image_params *imgp,
 		    u_long stack);
 static int	linux_vsyscall(struct thread *td);
@@ -217,13 +217,15 @@ translate_traps(int signal, int trap_code)
 }
 
 static int
-linux_fetch_syscall_args(struct thread *td, struct syscall_args *sa)
+linux_fetch_syscall_args(struct thread *td)
 {
 	struct proc *p;
 	struct trapframe *frame;
+	struct syscall_args *sa;
 
 	p = td->td_proc;
 	frame = td->td_frame;
+	sa = &td->td_sa;
 
 	sa->args[0] = frame->tf_rdi;
 	sa->args[1] = frame->tf_rsi;

Modified: user/alc/PQ_LAUNDRY/sys/amd64/linux32/linux32_sysvec.c
==============================================================================
--- user/alc/PQ_LAUNDRY/sys/amd64/linux32/linux32_sysvec.c	Wed Jun 14 02:42:38 2017	(r319930)
+++ user/alc/PQ_LAUNDRY/sys/amd64/linux32/linux32_sysvec.c	Wed Jun 14 02:46:38 2017	(r319931)
@@ -725,13 +725,15 @@ linux_rt_sigreturn(struct thread *td, struct linux_rt_
 }
 

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



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