svn commit: r314421 - in projects/clang400-import: . crypto/openssh etc etc/defaults etc/rc.d include/arpa lib/libc/regex lib/libc/x86/sys lib/libfetch lib/librss sbin/geom/class/part sbin/setkey s...

Dimitry Andric dim at FreeBSD.org
Tue Feb 28 21:30:32 UTC 2017


Author: dim
Date: Tue Feb 28 21:30:26 2017
New Revision: 314421
URL: https://svnweb.freebsd.org/changeset/base/314421

Log:
  Merge ^/head r314270 through r314419.

Added:
  projects/clang400-import/sys/arm/allwinner/clkng/
     - copied from r314419, head/sys/arm/allwinner/clkng/
  projects/clang400-import/sys/arm/conf/SOCDK
     - copied unchanged from r314419, head/sys/arm/conf/SOCDK
  projects/clang400-import/sys/arm/conf/SOCFPGA
     - copied unchanged from r314419, head/sys/arm/conf/SOCFPGA
  projects/clang400-import/sys/boot/fdt/dts/arm/socfpga_arria10_socdk_sdmmc.dts
     - copied unchanged from r314419, head/sys/boot/fdt/dts/arm/socfpga_arria10_socdk_sdmmc.dts
  projects/clang400-import/sys/boot/fdt/dts/arm/socfpga_cyclone5_sockit_beri_sdmmc.dts
     - copied unchanged from r314419, head/sys/boot/fdt/dts/arm/socfpga_cyclone5_sockit_beri_sdmmc.dts
  projects/clang400-import/sys/boot/fdt/dts/arm/socfpga_cyclone5_sockit_sdmmc.dts
     - copied unchanged from r314419, head/sys/boot/fdt/dts/arm/socfpga_cyclone5_sockit_sdmmc.dts
Deleted:
  projects/clang400-import/share/man/man4/man4.i386/streams.4
  projects/clang400-import/share/man/man4/man4.i386/svr4.4
  projects/clang400-import/sys/arm/conf/SOCKIT.common
  projects/clang400-import/sys/boot/fdt/dts/arm/socfpga-sockit-beri.dts
  projects/clang400-import/sys/boot/fdt/dts/arm/socfpga-sockit.dts
  projects/clang400-import/sys/boot/fdt/dts/arm/socfpga.dtsi
  projects/clang400-import/sys/compat/svr4/
  projects/clang400-import/sys/dev/streams/
  projects/clang400-import/sys/i386/svr4/
  projects/clang400-import/sys/modules/streams/
  projects/clang400-import/sys/modules/svr4/
Modified:
  projects/clang400-import/ObsoleteFiles.inc
  projects/clang400-import/crypto/openssh/freebsd-configure.sh
  projects/clang400-import/crypto/openssh/readconf.c
  projects/clang400-import/etc/defaults/rc.conf
  projects/clang400-import/etc/devd.conf
  projects/clang400-import/etc/rc.d/abi
  projects/clang400-import/include/arpa/nameser_compat.h
  projects/clang400-import/lib/libc/regex/re_format.7
  projects/clang400-import/lib/libc/x86/sys/__vdso_gettc.c
  projects/clang400-import/lib/libfetch/common.c
  projects/clang400-import/lib/librss/librss.c
  projects/clang400-import/sbin/geom/class/part/gpart.8
  projects/clang400-import/sbin/setkey/setkey.8
  projects/clang400-import/share/man/man4/man4.i386/Makefile
  projects/clang400-import/share/man/man5/rc.conf.5
  projects/clang400-import/share/man/man9/sbuf.9
  projects/clang400-import/sys/amd64/amd64/pmap.c
  projects/clang400-import/sys/amd64/conf/NOTES
  projects/clang400-import/sys/amd64/include/pmap.h
  projects/clang400-import/sys/amd64/linux/linux_dummy.c
  projects/clang400-import/sys/amd64/linux/linux_proto.h
  projects/clang400-import/sys/amd64/linux/linux_sysent.c
  projects/clang400-import/sys/amd64/linux/linux_systrace_args.c
  projects/clang400-import/sys/amd64/linux/syscalls.master
  projects/clang400-import/sys/amd64/linux32/linux.h
  projects/clang400-import/sys/amd64/linux32/linux32_dummy.c
  projects/clang400-import/sys/amd64/linux32/linux32_proto.h
  projects/clang400-import/sys/amd64/linux32/linux32_sysent.c
  projects/clang400-import/sys/amd64/linux32/linux32_systrace_args.c
  projects/clang400-import/sys/amd64/linux32/syscalls.master
  projects/clang400-import/sys/arm/allwinner/a31/files.a31
  projects/clang400-import/sys/arm/allwinner/files.allwinner
  projects/clang400-import/sys/arm/allwinner/h3/files.h3
  projects/clang400-import/sys/arm/altera/socfpga/socfpga_machdep.c
  projects/clang400-import/sys/arm/altera/socfpga/socfpga_manager.c
  projects/clang400-import/sys/arm/altera/socfpga/socfpga_mp.c
  projects/clang400-import/sys/arm/altera/socfpga/socfpga_mp.h
  projects/clang400-import/sys/arm/altera/socfpga/socfpga_rstmgr.c
  projects/clang400-import/sys/arm/altera/socfpga/socfpga_rstmgr.h
  projects/clang400-import/sys/arm/at91/uart_bus_at91usart.c
  projects/clang400-import/sys/arm/cavium/cns11xx/uart_bus_ec.c
  projects/clang400-import/sys/arm/conf/SOCKIT
  projects/clang400-import/sys/arm/conf/SOCKIT-BERI
  projects/clang400-import/sys/arm/nvidia/tegra_uart.c
  projects/clang400-import/sys/arm/xscale/i8134x/uart_bus_i81342.c
  projects/clang400-import/sys/arm/xscale/ixp425/uart_bus_ixp425.c
  projects/clang400-import/sys/arm/xscale/pxa/uart_bus_pxa.c
  projects/clang400-import/sys/boot/forth/loader.conf
  projects/clang400-import/sys/boot/i386/boot2/Makefile
  projects/clang400-import/sys/boot/i386/common/drv.c
  projects/clang400-import/sys/cam/cam_xpt.c
  projects/clang400-import/sys/cam/cam_xpt.h
  projects/clang400-import/sys/cam/ctl/ctl.c
  projects/clang400-import/sys/cam/ctl/ctl_private.h
  projects/clang400-import/sys/cam/ctl/ctl_tpc.c
  projects/clang400-import/sys/cam/ctl/scsi_ctl.c
  projects/clang400-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/arc.c
  projects/clang400-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa.c
  projects/clang400-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_misc.c
  projects/clang400-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/spa_impl.h
  projects/clang400-import/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zvol.c
  projects/clang400-import/sys/compat/linux/linux_event.c
  projects/clang400-import/sys/compat/linux/linux_event.h
  projects/clang400-import/sys/compat/linux/linux_misc.c
  projects/clang400-import/sys/compat/linux/linux_stats.c
  projects/clang400-import/sys/compat/linux/linux_time.c
  projects/clang400-import/sys/compat/linux/linux_timer.h
  projects/clang400-import/sys/compat/linuxkpi/common/include/linux/bitops.h
  projects/clang400-import/sys/compat/linuxkpi/common/include/linux/types.h
  projects/clang400-import/sys/conf/config.mk
  projects/clang400-import/sys/conf/files
  projects/clang400-import/sys/conf/files.i386
  projects/clang400-import/sys/conf/kern.post.mk
  projects/clang400-import/sys/conf/options.amd64
  projects/clang400-import/sys/conf/options.arm
  projects/clang400-import/sys/conf/options.i386
  projects/clang400-import/sys/dev/acpica/acpi_cmbat.c
  projects/clang400-import/sys/dev/aic7xxx/aic79xx.c
  projects/clang400-import/sys/dev/aic7xxx/aic7xxx.c
  projects/clang400-import/sys/dev/bnxt/bnxt.h
  projects/clang400-import/sys/dev/bnxt/bnxt_txrx.c
  projects/clang400-import/sys/dev/bwi/if_bwi.c
  projects/clang400-import/sys/dev/bwn/if_bwn.c
  projects/clang400-import/sys/dev/bxe/bxe.c
  projects/clang400-import/sys/dev/bxe/bxe.h
  projects/clang400-import/sys/dev/bxe/bxe_elink.c
  projects/clang400-import/sys/dev/bxe/bxe_stats.c
  projects/clang400-import/sys/dev/bxe/bxe_stats.h
  projects/clang400-import/sys/dev/chromebook_platform/chromebook_platform.c
  projects/clang400-import/sys/dev/cxgbe/iw_cxgbe/cm.c
  projects/clang400-import/sys/dev/cxgbe/iw_cxgbe/iw_cxgbe.h
  projects/clang400-import/sys/dev/firewire/sbp.c
  projects/clang400-import/sys/dev/firewire/sbp_targ.c
  projects/clang400-import/sys/dev/hyperv/netvsc/if_hn.c
  projects/clang400-import/sys/dev/isp/isp.c
  projects/clang400-import/sys/dev/isp/isp_freebsd.c
  projects/clang400-import/sys/dev/isp/isp_freebsd.h
  projects/clang400-import/sys/dev/isp/isp_target.c
  projects/clang400-import/sys/dev/iwm/if_iwm.c
  projects/clang400-import/sys/dev/iwn/if_iwn.c
  projects/clang400-import/sys/dev/otus/if_otus.c
  projects/clang400-import/sys/dev/ral/rt2560.c
  projects/clang400-import/sys/dev/ral/rt2661.c
  projects/clang400-import/sys/dev/ral/rt2860.c
  projects/clang400-import/sys/dev/rtwn/if_rtwn_tx.c
  projects/clang400-import/sys/dev/uart/uart.h
  projects/clang400-import/sys/dev/uart/uart_bus.h
  projects/clang400-import/sys/dev/uart/uart_bus_acpi.c
  projects/clang400-import/sys/dev/uart/uart_bus_ebus.c
  projects/clang400-import/sys/dev/uart/uart_bus_fdt.c
  projects/clang400-import/sys/dev/uart/uart_bus_isa.c
  projects/clang400-import/sys/dev/uart/uart_bus_pccard.c
  projects/clang400-import/sys/dev/uart/uart_bus_pci.c
  projects/clang400-import/sys/dev/uart/uart_bus_puc.c
  projects/clang400-import/sys/dev/uart/uart_bus_scc.c
  projects/clang400-import/sys/dev/uart/uart_core.c
  projects/clang400-import/sys/dev/uart/uart_cpu.h
  projects/clang400-import/sys/dev/uart/uart_cpu_arm64.c
  projects/clang400-import/sys/dev/uart/uart_cpu_fdt.c
  projects/clang400-import/sys/dev/uart/uart_cpu_fdt.h
  projects/clang400-import/sys/dev/uart/uart_dev_pl011.c
  projects/clang400-import/sys/dev/uart/uart_dev_snps.c
  projects/clang400-import/sys/dev/usb/controller/dwc_otg_fdt.c
  projects/clang400-import/sys/dev/usb/controller/xhci_pci.c
  projects/clang400-import/sys/dev/usb/serial/u3g.c
  projects/clang400-import/sys/dev/usb/storage/cfumass.c
  projects/clang400-import/sys/dev/usb/usbdevs
  projects/clang400-import/sys/dev/usb/wlan/if_rum.c
  projects/clang400-import/sys/dev/usb/wlan/if_run.c
  projects/clang400-import/sys/dev/usb/wlan/if_ural.c
  projects/clang400-import/sys/dev/usb/wlan/if_urtw.c
  projects/clang400-import/sys/dev/usb/wlan/if_zyd.c
  projects/clang400-import/sys/dev/wpi/if_wpi.c
  projects/clang400-import/sys/dev/xen/gntdev/gntdev.c
  projects/clang400-import/sys/geom/part/g_part.c
  projects/clang400-import/sys/i386/conf/NOTES
  projects/clang400-import/sys/i386/i386/pmap.c
  projects/clang400-import/sys/i386/include/pmap.h
  projects/clang400-import/sys/i386/linux/linux.h
  projects/clang400-import/sys/i386/linux/linux_dummy.c
  projects/clang400-import/sys/i386/linux/linux_proto.h
  projects/clang400-import/sys/i386/linux/linux_sysent.c
  projects/clang400-import/sys/i386/linux/linux_systrace_args.c
  projects/clang400-import/sys/i386/linux/syscalls.master
  projects/clang400-import/sys/kern/makesyscalls.sh
  projects/clang400-import/sys/kern/subr_prf.c
  projects/clang400-import/sys/mips/adm5120/uart_bus_adm5120.c
  projects/clang400-import/sys/mips/alchemy/uart_bus_alchemy.c
  projects/clang400-import/sys/mips/atheros/ar531x/uart_bus_ar5315.c
  projects/clang400-import/sys/mips/atheros/uart_bus_ar71xx.c
  projects/clang400-import/sys/mips/atheros/uart_bus_ar933x.c
  projects/clang400-import/sys/mips/broadcom/uart_bus_chipc.c
  projects/clang400-import/sys/mips/cavium/uart_bus_octeonusart.c
  projects/clang400-import/sys/mips/idt/uart_bus_rc32434.c
  projects/clang400-import/sys/mips/ingenic/jz4780_uart.c
  projects/clang400-import/sys/mips/malta/uart_bus_maltausart.c
  projects/clang400-import/sys/mips/nlm/xlp_pci.c
  projects/clang400-import/sys/mips/rmi/uart_bus_xlr_iodi.c
  projects/clang400-import/sys/mips/rmi/xlr_pci.c
  projects/clang400-import/sys/mips/rt305x/uart_bus_rt305x.c
  projects/clang400-import/sys/modules/Makefile
  projects/clang400-import/sys/modules/cam/Makefile
  projects/clang400-import/sys/net/ieee8023ad_lacp.c
  projects/clang400-import/sys/net/if.c
  projects/clang400-import/sys/ofed/drivers/infiniband/core/cma.c
  projects/clang400-import/sys/ofed/drivers/infiniband/core/iwcm.c
  projects/clang400-import/sys/powerpc/include/trap.h
  projects/clang400-import/sys/powerpc/powermac/cpcht.c
  projects/clang400-import/sys/powerpc/powerpc/trap.c
  projects/clang400-import/sys/powerpc/psim/uart_iobus.c
  projects/clang400-import/sys/sparc64/pci/fire.c
  projects/clang400-import/sys/sparc64/pci/psycho.c
  projects/clang400-import/sys/sparc64/pci/sbbc.c
  projects/clang400-import/sys/sparc64/pci/schizo.c
  projects/clang400-import/sys/sys/file.h
  projects/clang400-import/sys/sys/sbuf.h
  projects/clang400-import/sys/vm/uma_core.c
  projects/clang400-import/sys/vm/vm_kern.c
  projects/clang400-import/sys/vm/vm_pageout.c
  projects/clang400-import/sys/vm/vm_pageout.h
  projects/clang400-import/sys/x86/include/apicreg.h
  projects/clang400-import/sys/x86/include/apicvar.h
  projects/clang400-import/sys/x86/x86/cpu_machdep.c
  projects/clang400-import/sys/x86/x86/local_apic.c
  projects/clang400-import/usr.bin/dc/bcode.c
  projects/clang400-import/usr.bin/dc/dc.1
  projects/clang400-import/usr.bin/dc/dc.c
  projects/clang400-import/usr.bin/dc/stack.c
  projects/clang400-import/usr.bin/fortune/datfiles/freebsd-tips
  projects/clang400-import/usr.sbin/bhyve/bhyve.8
  projects/clang400-import/usr.sbin/bsdconfig/startup/include/messages.subr
  projects/clang400-import/usr.sbin/bsdconfig/startup/misc
Directory Properties:
  projects/clang400-import/   (props changed)
  projects/clang400-import/crypto/openssh/   (props changed)
  projects/clang400-import/sys/cddl/contrib/opensolaris/   (props changed)

Modified: projects/clang400-import/ObsoleteFiles.inc
==============================================================================
--- projects/clang400-import/ObsoleteFiles.inc	Tue Feb 28 21:27:51 2017	(r314420)
+++ projects/clang400-import/ObsoleteFiles.inc	Tue Feb 28 21:30:26 2017	(r314421)
@@ -151,6 +151,11 @@ OLD_FILES+=usr/lib/clang/3.9.1/lib/freeb
 OLD_DIRS+=usr/lib/clang/3.9.1/lib/freebsd
 OLD_DIRS+=usr/lib/clang/3.9.1/lib
 OLD_DIRS+=usr/lib/clang/3.9.1
+# 20170226: SVR4 compatibility removed
+.if ${TARGET_ARCH} == "amd64" || ${TARGET_ARCH} == "i386"
+OLD_FILES+=usr/share/man/man4/streams.4
+OLD_FILES+=usr/share/man/man4/svr4.4
+.endif
 # 20170219: OpenPAM RADULA upgrade removed the libpam tests
 OLD_FILES+=usr/tests/lib/libpam/Kyuafile
 OLD_FILES+=usr/tests/lib/libpam/t_openpam_ctype
@@ -8454,7 +8459,7 @@ OLD_FILES+=usr/share/man/man8/boot_i386.
 .endif
 .if ${TARGET_ARCH} != "aarch64" && ${TARGET} != "arm" && \
     ${TARGET_ARCH} != "powerpc" && ${TARGET_ARCH} != "powerpc64" && \
-    ${TARGET_ARCH} != "sparc64"
+    ${TARGET_ARCH} != "sparc64" && ${TARGET} != "mips"
 OLD_FILES+=usr/share/man/man8/ofwdump.8.gz
 .endif
 OLD_FILES+=usr/share/man/man8/mount_reiserfs.8.gz

Modified: projects/clang400-import/crypto/openssh/freebsd-configure.sh
==============================================================================
--- projects/clang400-import/crypto/openssh/freebsd-configure.sh	Tue Feb 28 21:27:51 2017	(r314420)
+++ projects/clang400-import/crypto/openssh/freebsd-configure.sh	Tue Feb 28 21:30:26 2017	(r314421)
@@ -30,7 +30,7 @@ export PATH=/bin:/sbin:/usr/bin:/usr/sbi
 unset LD_LIBRARY_PATH
 
 # generate config.h with krb5 and stash it
-sh configure $configure_args --with-kerberos5
+sh configure $configure_args --with-kerberos5=/usr
 mv config.log config.log.orig
 mv config.h config.h.orig
 

Modified: projects/clang400-import/crypto/openssh/readconf.c
==============================================================================
--- projects/clang400-import/crypto/openssh/readconf.c	Tue Feb 28 21:27:51 2017	(r314420)
+++ projects/clang400-import/crypto/openssh/readconf.c	Tue Feb 28 21:30:26 2017	(r314421)
@@ -319,7 +319,6 @@ add_local_forward(Options *options, cons
 #else
 	ipport_reserved = IPPORT_RESERVED;
 #endif
-	if (newfwd->listen_port < ipport_reserved && original_real_uid != 0)
 	if (newfwd->listen_port < ipport_reserved && original_real_uid != 0 &&
 	    newfwd->listen_path == NULL)
 		fatal("Privileged ports can only be forwarded by root.");

Modified: projects/clang400-import/etc/defaults/rc.conf
==============================================================================
--- projects/clang400-import/etc/defaults/rc.conf	Tue Feb 28 21:27:51 2017	(r314420)
+++ projects/clang400-import/etc/defaults/rc.conf	Tue Feb 28 21:30:26 2017	(r314421)
@@ -630,7 +630,6 @@ firstboot_sentinel="/firstboot"	# Script
 # Emulation/compatibility services provided by /etc/rc.d/abi
 sysvipc_enable="NO"	# Load System V IPC primitives at startup (or NO).
 linux_enable="NO"	# Linux binary compatibility loaded at startup (or NO).
-svr4_enable="NO"	# SysVR4 emulation loaded at startup (or NO).
 clear_tmp_enable="NO"	# Clear /tmp at startup.
 clear_tmp_X="YES" 	# Clear and recreate X11-related directories in /tmp
 ldconfig_insecure="NO"	# Set to YES to disable ldconfig security checks

Modified: projects/clang400-import/etc/devd.conf
==============================================================================
--- projects/clang400-import/etc/devd.conf	Tue Feb 28 21:27:51 2017	(r314420)
+++ projects/clang400-import/etc/devd.conf	Tue Feb 28 21:30:26 2017	(r314421)
@@ -312,10 +312,10 @@ notify 10 {
 };
 
 # This example works around a memory leak in PostgreSQL, restarting
-# it when the "user:pgsql:swap:devctl=1G" rctl(8) rule gets triggered.
+# it when the "user:postgres:swap:devctl=1G" rctl(8) rule gets triggered.
 notify 0 {
 	match "system"		"RCTL";
-	match "rule"		"user:70:swap:.*";
+	match "rule"		"user:770:swap:.*";
 	action			"/usr/local/etc/rc.d/postgresql restart";
 };
 

Modified: projects/clang400-import/etc/rc.d/abi
==============================================================================
--- projects/clang400-import/etc/rc.d/abi	Tue Feb 28 21:27:51 2017	(r314420)
+++ projects/clang400-import/etc/rc.d/abi	Tue Feb 28 21:30:26 2017	(r314421)
@@ -43,25 +43,18 @@ linux_start()
 	fi
 }
 
-svr4_start()
-{
-	echo -n ' svr4'
-	load_kld -m svr4elf svr4
-}
-
 abi_start()
 {
 	local _echostop
 
 	_echostop=
-	if checkyesno sysvipc_enable || checkyesno linux_enable || checkyesno svr4_enable; then
+	if checkyesno sysvipc_enable || checkyesno linux_enable; then
 		echo -n 'Additional ABI support:'
 		_echostop=yes
 	fi
 
 	checkyesno sysvipc_enable && sysv_start
 	checkyesno linux_enable && linux_start
-	checkyesno svr4_enable && svr4_start
 
 	[ -n "${_echostop}" ] && echo '.'
 }

Modified: projects/clang400-import/include/arpa/nameser_compat.h
==============================================================================
--- projects/clang400-import/include/arpa/nameser_compat.h	Tue Feb 28 21:27:51 2017	(r314420)
+++ projects/clang400-import/include/arpa/nameser_compat.h	Tue Feb 28 21:30:26 2017	(r314421)
@@ -175,6 +175,7 @@ typedef struct {
 #define T_ATMA		ns_t_atma
 #define T_NAPTR		ns_t_naptr
 #define T_A6		ns_t_a6
+#define T_DNAME		ns_t_dname
 #define T_OPT		ns_t_opt
 #define	T_TSIG		ns_t_tsig
 #define	T_IXFR		ns_t_ixfr

Modified: projects/clang400-import/lib/libc/regex/re_format.7
==============================================================================
--- projects/clang400-import/lib/libc/regex/re_format.7	Tue Feb 28 21:27:51 2017	(r314420)
+++ projects/clang400-import/lib/libc/regex/re_format.7	Tue Feb 28 21:30:26 2017	(r314421)
@@ -319,7 +319,7 @@ The additional word delimiters
 and
 .Ql \e>
 are provided to ease compatibility with traditional
-.Xr svr4 4
+SVR4
 systems but are not portable and should be avoided.
 .Pp
 In the event that an RE could match more than one substring of a given

Modified: projects/clang400-import/lib/libc/x86/sys/__vdso_gettc.c
==============================================================================
--- projects/clang400-import/lib/libc/x86/sys/__vdso_gettc.c	Tue Feb 28 21:27:51 2017	(r314420)
+++ projects/clang400-import/lib/libc/x86/sys/__vdso_gettc.c	Tue Feb 28 21:30:26 2017	(r314421)
@@ -33,6 +33,7 @@ __FBSDID("$FreeBSD$");
 
 #include <sys/param.h>
 #include "namespace.h"
+#include <sys/capsicum.h>
 #include <sys/elf.h>
 #include <sys/fcntl.h>
 #include <sys/mman.h>
@@ -124,6 +125,7 @@ __vdso_init_hpet(uint32_t u)
 	static const char devprefix[] = "/dev/hpet";
 	char devname[64], *c, *c1, t;
 	volatile char *new_map, *old_map;
+	unsigned int mode;
 	uint32_t u1;
 	int fd;
 
@@ -144,18 +146,25 @@ __vdso_init_hpet(uint32_t u)
 	if (old_map != NULL)
 		return;
 
+	if (cap_getmode(&mode) == 0 && mode != 0)
+		goto fail;
+
 	fd = _open(devname, O_RDONLY);
-	if (fd == -1) {
-		atomic_cmpset_rel_ptr((volatile uintptr_t *)&hpet_dev_map[u],
-		    (uintptr_t)old_map, (uintptr_t)MAP_FAILED);
-		return;
-	}
+	if (fd == -1)
+		goto fail;
+
 	new_map = mmap(NULL, PAGE_SIZE, PROT_READ, MAP_SHARED, fd, 0);
 	_close(fd);
 	if (atomic_cmpset_rel_ptr((volatile uintptr_t *)&hpet_dev_map[u],
 	    (uintptr_t)old_map, (uintptr_t)new_map) == 0 &&
 	    new_map != MAP_FAILED)
-		munmap((void *)new_map, PAGE_SIZE);
+	munmap((void *)new_map, PAGE_SIZE);
+
+	return;
+fail:
+	/* Prevent the caller from re-entering. */
+	atomic_cmpset_rel_ptr((volatile uintptr_t *)&hpet_dev_map[u],
+	    (uintptr_t)old_map, (uintptr_t)MAP_FAILED);
 }
 
 #ifdef WANT_HYPERV
@@ -174,16 +183,22 @@ static void
 __vdso_init_hyperv_tsc(void)
 {
 	int fd;
+	unsigned int mode;
+
+	if (cap_getmode(&mode) == 0 && mode != 0)
+		goto fail;
 
 	fd = _open(HYPERV_REFTSC_DEVPATH, O_RDONLY);
-	if (fd < 0) {
-		/* Prevent the caller from re-entering. */
-		hyperv_ref_tsc = MAP_FAILED;
-		return;
-	}
+	if (fd < 0)
+		goto fail;
 	hyperv_ref_tsc = mmap(NULL, sizeof(*hyperv_ref_tsc), PROT_READ,
 	    MAP_SHARED, fd, 0);
 	_close(fd);
+
+	return;
+fail:
+	/* Prevent the caller from re-entering. */
+	hyperv_ref_tsc = MAP_FAILED;
 }
 
 static int

Modified: projects/clang400-import/lib/libfetch/common.c
==============================================================================
--- projects/clang400-import/lib/libfetch/common.c	Tue Feb 28 21:27:51 2017	(r314420)
+++ projects/clang400-import/lib/libfetch/common.c	Tue Feb 28 21:30:26 2017	(r314421)
@@ -153,7 +153,7 @@ fetch_syserr(void)
 	case EHOSTDOWN:
 		fetchLastErrCode = FETCH_DOWN;
 		break;
-default:
+	default:
 		fetchLastErrCode = FETCH_UNKNOWN;
 	}
 	snprintf(fetchLastErrString, MAXERRSTRING, "%s", strerror(errno));
@@ -371,7 +371,7 @@ fetch_connect(const char *host, int port
 	}
 	if (err != 0) {
 		if (verbose)
-			fetch_info("failed to connect to %s:%s", host, port);
+			fetch_info("failed to connect to %s:%d", host, port);
 		goto syserr;
 	}
 

Modified: projects/clang400-import/lib/librss/librss.c
==============================================================================
--- projects/clang400-import/lib/librss/librss.c	Tue Feb 28 21:27:51 2017	(r314420)
+++ projects/clang400-import/lib/librss/librss.c	Tue Feb 28 21:30:26 2017	(r314421)
@@ -244,10 +244,10 @@ rss_config_get(void)
 	return (rc);
 
 error:
-	if ((rc != NULL) && rc->rss_bucket_map)
+	if (rc != NULL) {
 		free(rc->rss_bucket_map);
-	if (rc != NULL)
 		free(rc);
+	}
 	return (NULL);
 }
 

Modified: projects/clang400-import/sbin/geom/class/part/gpart.8
==============================================================================
--- projects/clang400-import/sbin/geom/class/part/gpart.8	Tue Feb 28 21:27:51 2017	(r314420)
+++ projects/clang400-import/sbin/geom/class/part/gpart.8	Tue Feb 28 21:30:26 2017	(r314421)
@@ -1146,6 +1146,18 @@ variables can be used to control the beh
 GEOM class.
 The default value is shown next to each variable.
 .Bl -tag -width indent
+.It Va kern.geom.part.auto_resize: No 1
+This variable controls automatic resize behavior of
+.Nm
+GEOM class.
+When this variable is enable and new size of provider is detected, the schema
+metadata is resized but all changes are not saved to disk, until
+.Cm gpart commit
+is run to confirm changes.
+This behavior is also reported with diagnostic message:
+.Sy "GEOM_PART: (provider) was automatically resized."
+.Sy "Use `gpart commit (provider)` to save changes or `gpart undo (provider)`"
+.Sy "to revert them."
 .It Va kern.geom.part.check_integrity : No 1
 This variable controls the behaviour of metadata integrity checks.
 When integrity checks are enabled, the

Modified: projects/clang400-import/sbin/setkey/setkey.8
==============================================================================
--- projects/clang400-import/sbin/setkey/setkey.8	Tue Feb 28 21:27:51 2017	(r314420)
+++ projects/clang400-import/sbin/setkey/setkey.8	Tue Feb 28 21:30:26 2017	(r314421)
@@ -29,7 +29,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd February 6, 2017
+.Dd February 27, 2017
 .Dt SETKEY 8
 .Os
 .\"
@@ -593,12 +593,11 @@ keyed-md5	128		ah: 96bit ICV (no documen
 keyed-sha1	160		ah: 96bit ICV (no document)
 		160		ah-old: 128bit ICV (no document)
 null		0 to 2048	for debugging
-hmac-sha2-256	256		ah: 96bit ICV
-				(draft-ietf-ipsec-ciph-sha-256-00)
+hmac-sha2-256	256		ah: 128bit ICV (RFC4868)
 		256		ah-old: 128bit ICV (no document)
-hmac-sha2-384	384		ah: 96bit ICV (no document)
+hmac-sha2-384	384		ah: 192bit ICV (RFC4868)
 		384		ah-old: 128bit ICV (no document)
-hmac-sha2-512	512		ah: 96bit ICV (no document)
+hmac-sha2-512	512		ah: 256bit ICV (RFC4868)
 		512		ah-old: 128bit ICV (no document)
 hmac-ripemd160	160		ah: 96bit ICV (RFC2857)
 				ah-old: 128bit ICV (no document)

Modified: projects/clang400-import/share/man/man4/man4.i386/Makefile
==============================================================================
--- projects/clang400-import/share/man/man4/man4.i386/Makefile	Tue Feb 28 21:27:51 2017	(r314420)
+++ projects/clang400-import/share/man/man4/man4.i386/Makefile	Tue Feb 28 21:30:26 2017	(r314421)
@@ -25,8 +25,6 @@ MAN=	aic.4 \
 	pnpbios.4 \
 	sbni.4 \
 	smapi.4 \
-	streams.4 \
-	svr4.4 \
 	vpd.4 \
 	vx.4
 

Modified: projects/clang400-import/share/man/man5/rc.conf.5
==============================================================================
--- projects/clang400-import/share/man/man5/rc.conf.5	Tue Feb 28 21:27:51 2017	(r314420)
+++ projects/clang400-import/share/man/man5/rc.conf.5	Tue Feb 28 21:30:26 2017	(r314421)
@@ -24,7 +24,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd December 10, 2016
+.Dd February 26, 2017
 .Dt RC.CONF 5
 .Os
 .Sh NAME
@@ -3631,11 +3631,6 @@ Set to
 .Dq Li YES
 to enable Linux/ELF binary emulation at system initial
 boot time.
-.It Va svr4_enable
-.Pq Vt bool
-If set to
-.Dq Li YES ,
-enable SysVR4 emulation at boot time.
 .It Va sysvipc_enable
 .Pq Vt bool
 If set to

Modified: projects/clang400-import/share/man/man9/sbuf.9
==============================================================================
--- projects/clang400-import/share/man/man9/sbuf.9	Tue Feb 28 21:27:51 2017	(r314420)
+++ projects/clang400-import/share/man/man9/sbuf.9	Tue Feb 28 21:30:26 2017	(r314421)
@@ -57,7 +57,8 @@
 .Nm sbuf_delete ,
 .Nm sbuf_start_section ,
 .Nm sbuf_end_section ,
-.Nm sbuf_hexdump
+.Nm sbuf_hexdump ,
+.Nm sbuf_putbuf
 .Nd safe string composition
 .Sh SYNOPSIS
 .In sys/types.h
@@ -124,6 +125,8 @@
 .Fa "const char *hdr"
 .Fa "int flags"
 .Fc
+.Ft void
+.Fn sbuf_putbuf "struct sbuf *s"
 .In sys/sysctl.h
 .Ft struct sbuf *
 .Fn sbuf_new_for_sysctl "struct sbuf *s" "char *buf" "int length" "struct sysctl_req *req"
@@ -472,6 +475,12 @@ representation of the bytes if possible.
 See the
 .Xr hexdump 3
 man page for more details on the interface.
+.Pp
+The
+.Fn sbuf_putbuf
+function printfs the sbuf to stdout if in userland, and to the console
+and log if in the kernel.
+It does not drain the buffer or update any pointers.
 .Sh NOTES
 If an operation caused an
 .Fa sbuf

Modified: projects/clang400-import/sys/amd64/amd64/pmap.c
==============================================================================
--- projects/clang400-import/sys/amd64/amd64/pmap.c	Tue Feb 28 21:27:51 2017	(r314420)
+++ projects/clang400-import/sys/amd64/amd64/pmap.c	Tue Feb 28 21:30:26 2017	(r314421)
@@ -613,6 +613,8 @@ static vm_page_t pmap_enter_quick_locked
     vm_page_t m, vm_prot_t prot, vm_page_t mpte, struct rwlock **lockp);
 static void pmap_fill_ptp(pt_entry_t *firstpte, pt_entry_t newpte);
 static int pmap_insert_pt_page(pmap_t pmap, vm_page_t mpte);
+static void pmap_invalidate_pde_page(pmap_t pmap, vm_offset_t va,
+		    pd_entry_t pde);
 static void pmap_kenter_attr(vm_offset_t va, vm_paddr_t pa, int mode);
 static void pmap_pde_attr(pd_entry_t *pde, int cache_bits, int mask);
 static void pmap_promote_pde(pmap_t pmap, pd_entry_t *pde, vm_offset_t va,
@@ -1838,6 +1840,27 @@ pmap_update_pde(pmap_t pmap, vm_offset_t
 }
 #endif /* !SMP */
 
+static void
+pmap_invalidate_pde_page(pmap_t pmap, vm_offset_t va, pd_entry_t pde)
+{
+
+	/*
+	 * When the PDE has PG_PROMOTED set, the 2MB page mapping was created
+	 * by a promotion that did not invalidate the 512 4KB page mappings
+	 * that might exist in the TLB.  Consequently, at this point, the TLB
+	 * may hold both 4KB and 2MB page mappings for the address range [va,
+	 * va + NBPDR).  Therefore, the entire range must be invalidated here.
+	 * In contrast, when PG_PROMOTED is clear, the TLB will not hold any
+	 * 4KB page mappings for the address range [va, va + NBPDR), and so a
+	 * single INVLPG suffices to invalidate the 2MB page mapping from the
+	 * TLB.
+	 */
+	if ((pde & PG_PROMOTED) != 0)
+		pmap_invalidate_range(pmap, va, va + NBPDR - 1);
+	else
+		pmap_invalidate_page(pmap, va);
+}
+
 #define PMAP_CLFLUSH_THRESHOLD   (2 * 1024 * 1024)
 
 void
@@ -3472,7 +3495,8 @@ pmap_demote_pde_locked(pmap_t pmap, pd_e
 			SLIST_INIT(&free);
 			sva = trunc_2mpage(va);
 			pmap_remove_pde(pmap, pde, sva, &free, lockp);
-			pmap_invalidate_range(pmap, sva, sva + NBPDR - 1);
+			if ((oldpde & PG_G) == 0)
+				pmap_invalidate_pde_page(pmap, sva, oldpde);
 			pmap_free_zero_pages(&free);
 			CTR2(KTR_PMAP, "pmap_demote_pde: failure for va %#lx"
 			    " in pmap %p", va, pmap);
@@ -3612,25 +3636,8 @@ pmap_remove_pde(pmap_t pmap, pd_entry_t 
 	oldpde = pte_load_clear(pdq);
 	if (oldpde & PG_W)
 		pmap->pm_stats.wired_count -= NBPDR / PAGE_SIZE;
-
-	/*
-	 * When workaround_erratum383 is false, a promotion to a 2M
-	 * page mapping does not invalidate the 512 4K page mappings
-	 * from the TLB.  Consequently, at this point, the TLB may
-	 * hold both 4K and 2M page mappings.  Therefore, the entire
-	 * range of addresses must be invalidated here.  In contrast,
-	 * when workaround_erratum383 is true, a promotion does
-	 * invalidate the 512 4K page mappings, and so a single INVLPG
-	 * suffices to invalidate the 2M page mapping.
-	 */
-	if ((oldpde & PG_G) != 0) {
-		if (workaround_erratum383)
-			pmap_invalidate_page(kernel_pmap, sva);
-		else
-			pmap_invalidate_range(kernel_pmap, sva,
-			    sva + NBPDR - 1);
-	}
-
+	if ((oldpde & PG_G) != 0)
+		pmap_invalidate_pde_page(kernel_pmap, sva, oldpde);
 	pmap_resident_count_dec(pmap, NBPDR / PAGE_SIZE);
 	if (oldpde & PG_MANAGED) {
 		CHANGE_PV_LIST_LOCK_TO_PHYS(lockp, oldpde & PG_PS_FRAME);
@@ -4010,16 +4017,16 @@ retry:
 	if ((prot & VM_PROT_EXECUTE) == 0)
 		newpde |= pg_nx;
 	if (newpde != oldpde) {
-		if (!atomic_cmpset_long(pde, oldpde, newpde))
+		/*
+		 * As an optimization to future operations on this PDE, clear
+		 * PG_PROMOTED.  The impending invalidation will remove any
+		 * lingering 4KB page mappings from the TLB.
+		 */
+		if (!atomic_cmpset_long(pde, oldpde, newpde & ~PG_PROMOTED))
 			goto retry;
-		if (oldpde & PG_G) {
-			/* See pmap_remove_pde() for explanation. */
-			if (workaround_erratum383)
-				pmap_invalidate_page(kernel_pmap, sva);
-			else
-				pmap_invalidate_range(kernel_pmap, sva,
-				    sva + NBPDR - 1);
-		} else
+		if ((oldpde & PG_G) != 0)
+			pmap_invalidate_pde_page(kernel_pmap, sva, oldpde);
+		else
 			anychanged = TRUE;
 	}
 	return (anychanged);
@@ -4272,7 +4279,7 @@ setpte:
 	if (workaround_erratum383)
 		pmap_update_pde(pmap, va, pde, PG_PS | newpde);
 	else
-		pde_store(pde, PG_PS | newpde);
+		pde_store(pde, PG_PROMOTED | PG_PS | newpde);
 
 	atomic_add_long(&pmap_pde_promotions, 1);
 	CTR2(KTR_PMAP, "pmap_promote_pde: success for va %#lx"
@@ -4585,7 +4592,8 @@ pmap_enter_pde(pmap_t pmap, vm_offset_t 
 	pmap_resident_count_inc(pmap, NBPDR / PAGE_SIZE);
 
 	/*
-	 * Map the superpage.
+	 * Map the superpage.  (This is not a promoted mapping; there will not
+	 * be any lingering 4KB page mappings in the TLB.)
 	 */
 	pde_store(pde, newpde);
 

Modified: projects/clang400-import/sys/amd64/conf/NOTES
==============================================================================
--- projects/clang400-import/sys/amd64/conf/NOTES	Tue Feb 28 21:27:51 2017	(r314420)
+++ projects/clang400-import/sys/amd64/conf/NOTES	Tue Feb 28 21:30:26 2017	(r314421)
@@ -633,27 +633,6 @@ options 	LINPROCFS
 # and PSEUDOFS)
 options 	LINSYSFS
 
-#
-# SysVR4 ABI emulation
-#
-# The svr4 ABI emulator can be statically compiled into the kernel or loaded as
-# a KLD module.
-# The STREAMS network emulation code can also be compiled statically or as a
-# module.  If loaded as a module, it must be loaded before the svr4 module
-# (the /usr/sbin/svr4 script does this for you).  If compiling statically,
-# the `streams' device must be configured into any kernel which also
-# specifies COMPAT_SVR4.  It is possible to have a statically-configured
-# STREAMS device and a dynamically loadable svr4 emulator;  the /usr/sbin/svr4
-# script understands that it doesn't need to load the `streams' module under
-# those circumstances.
-# Caveat:  At this time, `options KTRACE' is required for the svr4 emulator
-# (whether static or dynamic).
-#
-#XXX#options 	COMPAT_SVR4	# build emulator statically
-#XXX#options 	DEBUG_SVR4	# enable verbose debugging
-#XXX#device	streams		# STREAMS network driver (required for svr4).
-
-

 #####################################################################
 # VM OPTIONS
 

Modified: projects/clang400-import/sys/amd64/include/pmap.h
==============================================================================
--- projects/clang400-import/sys/amd64/include/pmap.h	Tue Feb 28 21:27:51 2017	(r314420)
+++ projects/clang400-import/sys/amd64/include/pmap.h	Tue Feb 28 21:30:26 2017	(r314421)
@@ -109,6 +109,7 @@
 #define	PG_MANAGED	X86_PG_AVAIL2
 #define	EPT_PG_EMUL_V	X86_PG_AVAIL(52)
 #define	EPT_PG_EMUL_RW	X86_PG_AVAIL(53)
+#define	PG_PROMOTED	X86_PG_AVAIL(54)	/* PDE only */
 #define	PG_FRAME	(0x000ffffffffff000ul)
 #define	PG_PS_FRAME	(0x000fffffffe00000ul)
 

Modified: projects/clang400-import/sys/amd64/linux/linux_dummy.c
==============================================================================
--- projects/clang400-import/sys/amd64/linux/linux_dummy.c	Tue Feb 28 21:27:51 2017	(r314420)
+++ projects/clang400-import/sys/amd64/linux/linux_dummy.c	Tue Feb 28 21:30:26 2017	(r314421)
@@ -103,10 +103,6 @@ DUMMY(vmsplice);
 DUMMY(move_pages);
 /* linux 2.6.22: */
 DUMMY(signalfd);
-DUMMY(timerfd_create);
-/* linux 2.6.25: */
-DUMMY(timerfd_settime);
-DUMMY(timerfd_gettime);
 /* linux 2.6.27: */
 DUMMY(signalfd4);
 DUMMY(inotify_init1);

Modified: projects/clang400-import/sys/amd64/linux/linux_proto.h
==============================================================================
--- projects/clang400-import/sys/amd64/linux/linux_proto.h	Tue Feb 28 21:27:51 2017	(r314420)
+++ projects/clang400-import/sys/amd64/linux/linux_proto.h	Tue Feb 28 21:30:26 2017	(r314421)
@@ -995,12 +995,14 @@ struct linux_epoll_pwait_args {
 	char maxevents_l_[PADL_(l_int)]; l_int maxevents; char maxevents_r_[PADR_(l_int)];
 	char timeout_l_[PADL_(l_int)]; l_int timeout; char timeout_r_[PADR_(l_int)];
 	char mask_l_[PADL_(l_sigset_t *)]; l_sigset_t * mask; char mask_r_[PADR_(l_sigset_t *)];
+	char sigsetsize_l_[PADL_(l_size_t)]; l_size_t sigsetsize; char sigsetsize_r_[PADR_(l_size_t)];
 };
 struct linux_signalfd_args {
 	register_t dummy;
 };
 struct linux_timerfd_create_args {
-	register_t dummy;
+	char clockid_l_[PADL_(l_int)]; l_int clockid; char clockid_r_[PADR_(l_int)];
+	char flags_l_[PADL_(l_int)]; l_int flags; char flags_r_[PADR_(l_int)];
 };
 struct linux_eventfd_args {
 	char initval_l_[PADL_(l_uint)]; l_uint initval; char initval_r_[PADR_(l_uint)];
@@ -1012,10 +1014,14 @@ struct linux_fallocate_args {
 	char len_l_[PADL_(l_loff_t)]; l_loff_t len; char len_r_[PADR_(l_loff_t)];
 };
 struct linux_timerfd_settime_args {
-	register_t dummy;
+	char fd_l_[PADL_(l_int)]; l_int fd; char fd_r_[PADR_(l_int)];
+	char flags_l_[PADL_(l_int)]; l_int flags; char flags_r_[PADR_(l_int)];
+	char new_value_l_[PADL_(const struct l_itimerspec *)]; const struct l_itimerspec * new_value; char new_value_r_[PADR_(const struct l_itimerspec *)];
+	char old_value_l_[PADL_(struct l_itimerspec *)]; struct l_itimerspec * old_value; char old_value_r_[PADR_(struct l_itimerspec *)];
 };
 struct linux_timerfd_gettime_args {
-	register_t dummy;
+	char fd_l_[PADL_(l_int)]; l_int fd; char fd_r_[PADR_(l_int)];
+	char old_value_l_[PADL_(struct l_itimerspec *)]; struct l_itimerspec * old_value; char old_value_r_[PADR_(struct l_itimerspec *)];
 };
 struct linux_accept4_args {
 	char s_l_[PADL_(l_int)]; l_int s; char s_r_[PADR_(l_int)];

Modified: projects/clang400-import/sys/amd64/linux/linux_sysent.c
==============================================================================
--- projects/clang400-import/sys/amd64/linux/linux_sysent.c	Tue Feb 28 21:27:51 2017	(r314420)
+++ projects/clang400-import/sys/amd64/linux/linux_sysent.c	Tue Feb 28 21:30:26 2017	(r314421)
@@ -300,11 +300,11 @@ struct sysent linux_sysent[] = {
 	{ AS(linux_utimensat_args), (sy_call_t *)linux_utimensat, AUE_FUTIMESAT, NULL, 0, 0, 0, SY_THR_STATIC },	/* 280 = linux_utimensat */
 	{ AS(linux_epoll_pwait_args), (sy_call_t *)linux_epoll_pwait, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC },	/* 281 = linux_epoll_pwait */
 	{ 0, (sy_call_t *)linux_signalfd, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC },	/* 282 = linux_signalfd */
-	{ 0, (sy_call_t *)linux_timerfd_create, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC },	/* 283 = linux_timerfd_create */
+	{ AS(linux_timerfd_create_args), (sy_call_t *)linux_timerfd_create, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC },	/* 283 = linux_timerfd_create */
 	{ AS(linux_eventfd_args), (sy_call_t *)linux_eventfd, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC },	/* 284 = linux_eventfd */
 	{ AS(linux_fallocate_args), (sy_call_t *)linux_fallocate, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC },	/* 285 = linux_fallocate */
-	{ 0, (sy_call_t *)linux_timerfd_settime, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC },	/* 286 = linux_timerfd_settime */
-	{ 0, (sy_call_t *)linux_timerfd_gettime, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC },	/* 287 = linux_timerfd_gettime */
+	{ AS(linux_timerfd_settime_args), (sy_call_t *)linux_timerfd_settime, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC },	/* 286 = linux_timerfd_settime */
+	{ AS(linux_timerfd_gettime_args), (sy_call_t *)linux_timerfd_gettime, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC },	/* 287 = linux_timerfd_gettime */
 	{ AS(linux_accept4_args), (sy_call_t *)linux_accept4, AUE_ACCEPT, NULL, 0, 0, 0, SY_THR_STATIC },	/* 288 = linux_accept4 */
 	{ 0, (sy_call_t *)linux_signalfd4, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC },	/* 289 = linux_signalfd4 */
 	{ AS(linux_eventfd2_args), (sy_call_t *)linux_eventfd2, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC },	/* 290 = linux_eventfd2 */

Modified: projects/clang400-import/sys/amd64/linux/linux_systrace_args.c
==============================================================================
--- projects/clang400-import/sys/amd64/linux/linux_systrace_args.c	Tue Feb 28 21:27:51 2017	(r314420)
+++ projects/clang400-import/sys/amd64/linux/linux_systrace_args.c	Tue Feb 28 21:30:26 2017	(r314421)
@@ -2068,7 +2068,8 @@ systrace_args(int sysnum, void *params, 
 		iarg[2] = p->maxevents; /* l_int */
 		iarg[3] = p->timeout; /* l_int */
 		uarg[4] = (intptr_t) p->mask; /* l_sigset_t * */
-		*n_args = 5;
+		iarg[5] = p->sigsetsize; /* l_size_t */
+		*n_args = 6;
 		break;
 	}
 	/* linux_signalfd */
@@ -2078,7 +2079,10 @@ systrace_args(int sysnum, void *params, 
 	}
 	/* linux_timerfd_create */
 	case 283: {
-		*n_args = 0;
+		struct linux_timerfd_create_args *p = params;
+		iarg[0] = p->clockid; /* l_int */
+		iarg[1] = p->flags; /* l_int */
+		*n_args = 2;
 		break;
 	}
 	/* linux_eventfd */
@@ -2100,12 +2104,20 @@ systrace_args(int sysnum, void *params, 
 	}
 	/* linux_timerfd_settime */
 	case 286: {
-		*n_args = 0;
+		struct linux_timerfd_settime_args *p = params;
+		iarg[0] = p->fd; /* l_int */
+		iarg[1] = p->flags; /* l_int */
+		uarg[2] = (intptr_t) p->new_value; /* const struct l_itimerspec * */
+		uarg[3] = (intptr_t) p->old_value; /* struct l_itimerspec * */
+		*n_args = 4;
 		break;
 	}
 	/* linux_timerfd_gettime */
 	case 287: {
-		*n_args = 0;
+		struct linux_timerfd_gettime_args *p = params;
+		iarg[0] = p->fd; /* l_int */
+		uarg[1] = (intptr_t) p->old_value; /* struct l_itimerspec * */
+		*n_args = 2;
 		break;
 	}
 	/* linux_accept4 */
@@ -5635,6 +5647,9 @@ systrace_entry_setargdesc(int sysnum, in
 		case 4:
 			p = "userland l_sigset_t *";
 			break;
+		case 5:
+			p = "l_size_t";
+			break;
 		default:
 			break;
 		};
@@ -5644,6 +5659,16 @@ systrace_entry_setargdesc(int sysnum, in
 		break;
 	/* linux_timerfd_create */
 	case 283:
+		switch(ndx) {
+		case 0:
+			p = "l_int";
+			break;
+		case 1:
+			p = "l_int";
+			break;
+		default:
+			break;
+		};
 		break;
 	/* linux_eventfd */
 	case 284:
@@ -5676,9 +5701,35 @@ systrace_entry_setargdesc(int sysnum, in
 		break;
 	/* linux_timerfd_settime */
 	case 286:
+		switch(ndx) {
+		case 0:
+			p = "l_int";
+			break;
+		case 1:
+			p = "l_int";
+			break;
+		case 2:
+			p = "userland const struct l_itimerspec *";
+			break;
+		case 3:
+			p = "userland struct l_itimerspec *";
+			break;
+		default:
+			break;
+		};
 		break;
 	/* linux_timerfd_gettime */
 	case 287:
+		switch(ndx) {
+		case 0:
+			p = "l_int";
+			break;
+		case 1:
+			p = "userland struct l_itimerspec *";
+			break;
+		default:
+			break;
+		};
 		break;
 	/* linux_accept4 */
 	case 288:
@@ -7494,6 +7545,9 @@ systrace_return_setargdesc(int sysnum, i
 	case 282:
 	/* linux_timerfd_create */
 	case 283:
+		if (ndx == 0 || ndx == 1)
+			p = "int";
+		break;
 	/* linux_eventfd */
 	case 284:
 		if (ndx == 0 || ndx == 1)
@@ -7506,8 +7560,14 @@ systrace_return_setargdesc(int sysnum, i
 		break;
 	/* linux_timerfd_settime */
 	case 286:
+		if (ndx == 0 || ndx == 1)
+			p = "int";
+		break;
 	/* linux_timerfd_gettime */
 	case 287:
+		if (ndx == 0 || ndx == 1)
+			p = "int";
+		break;
 	/* linux_accept4 */
 	case 288:
 		if (ndx == 0 || ndx == 1)

Modified: projects/clang400-import/sys/amd64/linux/syscalls.master
==============================================================================
--- projects/clang400-import/sys/amd64/linux/syscalls.master	Tue Feb 28 21:27:51 2017	(r314420)
+++ projects/clang400-import/sys/amd64/linux/syscalls.master	Tue Feb 28 21:30:26 2017	(r314421)
@@ -473,14 +473,18 @@
 280	AUE_FUTIMESAT	STD	{ int linux_utimensat(l_int dfd, const char *pathname, \
 					const struct l_timespec *times, l_int flags); }
 281     AUE_NULL        STD     { int linux_epoll_pwait(l_int epfd, struct epoll_event *events, \
-                                        l_int maxevents, l_int timeout, l_sigset_t *mask); }
+                                        l_int maxevents, l_int timeout, l_sigset_t *mask, \
+                                        l_size_t sigsetsize); }
 282	AUE_NULL	STD	{ int linux_signalfd(void); }
-283	AUE_NULL	STD	{ int linux_timerfd_create(void); }
+283	AUE_NULL	STD	{ int linux_timerfd_create(l_int clockid, l_int flags); }
 284	AUE_NULL	STD	{ int linux_eventfd(l_uint initval); }
 285	AUE_NULL	STD	{ int linux_fallocate(l_int fd, l_int mode, \
 				    l_loff_t offset, l_loff_t len); }
-286	AUE_NULL	STD	{ int linux_timerfd_settime(void); }
-287	AUE_NULL	STD	{ int linux_timerfd_gettime(void); }
+286	AUE_NULL	STD	{ int linux_timerfd_settime(l_int fd, l_int flags,	\
+				    const struct l_itimerspec *new_value,		\
+				    struct l_itimerspec *old_value); }
+287	AUE_NULL	STD	{ int linux_timerfd_gettime(l_int fd,	\
+				    struct l_itimerspec *old_value); }
 288	AUE_ACCEPT	STD	{ int linux_accept4(l_int s, l_uintptr_t addr, \
 				    l_uintptr_t namelen, int flags); }
 ; linux 2.6.27:

Modified: projects/clang400-import/sys/amd64/linux32/linux.h
==============================================================================
--- projects/clang400-import/sys/amd64/linux32/linux.h	Tue Feb 28 21:27:51 2017	(r314420)
+++ projects/clang400-import/sys/amd64/linux32/linux.h	Tue Feb 28 21:30:26 2017	(r314421)
@@ -250,7 +250,9 @@ struct l_statfs64 { 
         uint64_t        f_ffree; 
         l_fsid_t        f_fsid;
         l_int           f_namelen;
-        l_int           f_spare[6];
+        l_int           f_frsize;
+        l_int           f_flags;
+        l_int           f_spare[4];
 } __packed;
 
 /* sigaction flags */

Modified: projects/clang400-import/sys/amd64/linux32/linux32_dummy.c
==============================================================================
--- projects/clang400-import/sys/amd64/linux32/linux32_dummy.c	Tue Feb 28 21:27:51 2017	(r314420)
+++ projects/clang400-import/sys/amd64/linux32/linux32_dummy.c	Tue Feb 28 21:30:26 2017	(r314421)
@@ -103,10 +103,6 @@ DUMMY(move_pages);
 DUMMY(getcpu);
 /* linux 2.6.22: */
 DUMMY(signalfd);
-DUMMY(timerfd_create);
-/* linux 2.6.25: */
-DUMMY(timerfd_settime);
-DUMMY(timerfd_gettime);
 /* linux 2.6.27: */
 DUMMY(signalfd4);
 DUMMY(inotify_init1);

Modified: projects/clang400-import/sys/amd64/linux32/linux32_proto.h
==============================================================================
--- projects/clang400-import/sys/amd64/linux32/linux32_proto.h	Tue Feb 28 21:27:51 2017	(r314420)
+++ projects/clang400-import/sys/amd64/linux32/linux32_proto.h	Tue Feb 28 21:30:26 2017	(r314421)
@@ -1051,6 +1051,7 @@ struct linux_epoll_pwait_args {
 	char maxevents_l_[PADL_(l_int)]; l_int maxevents; char maxevents_r_[PADR_(l_int)];
 	char timeout_l_[PADL_(l_int)]; l_int timeout; char timeout_r_[PADR_(l_int)];
 	char mask_l_[PADL_(l_sigset_t *)]; l_sigset_t * mask; char mask_r_[PADR_(l_sigset_t *)];
+	char sigsetsize_l_[PADL_(l_size_t)]; l_size_t sigsetsize; char sigsetsize_r_[PADR_(l_size_t)];
 };
 struct linux_utimensat_args {
 	char dfd_l_[PADL_(l_int)]; l_int dfd; char dfd_r_[PADR_(l_int)];
@@ -1062,7 +1063,8 @@ struct linux_signalfd_args {
 	register_t dummy;
 };
 struct linux_timerfd_create_args {
-	register_t dummy;
+	char clockid_l_[PADL_(l_int)]; l_int clockid; char clockid_r_[PADR_(l_int)];
+	char flags_l_[PADL_(l_int)]; l_int flags; char flags_r_[PADR_(l_int)];
 };
 struct linux_eventfd_args {
 	char initval_l_[PADL_(l_uint)]; l_uint initval; char initval_r_[PADR_(l_uint)];
@@ -1074,10 +1076,14 @@ struct linux_fallocate_args {
 	char len_l_[PADL_(l_loff_t)]; l_loff_t len; char len_r_[PADR_(l_loff_t)];
 };
 struct linux_timerfd_settime_args {
-	register_t dummy;
+	char fd_l_[PADL_(l_int)]; l_int fd; char fd_r_[PADR_(l_int)];
+	char flags_l_[PADL_(l_int)]; l_int flags; char flags_r_[PADR_(l_int)];
+	char new_value_l_[PADL_(const struct l_itimerspec *)]; const struct l_itimerspec * new_value; char new_value_r_[PADR_(const struct l_itimerspec *)];
+	char old_value_l_[PADL_(struct l_itimerspec *)]; struct l_itimerspec * old_value; char old_value_r_[PADR_(struct l_itimerspec *)];
 };
 struct linux_timerfd_gettime_args {
-	register_t dummy;
+	char fd_l_[PADL_(l_int)]; l_int fd; char fd_r_[PADR_(l_int)];
+	char old_value_l_[PADL_(struct l_itimerspec *)]; struct l_itimerspec * old_value; char old_value_r_[PADR_(struct l_itimerspec *)];
 };
 struct linux_signalfd4_args {
 	register_t dummy;

Modified: projects/clang400-import/sys/amd64/linux32/linux32_sysent.c
==============================================================================
--- projects/clang400-import/sys/amd64/linux32/linux32_sysent.c	Tue Feb 28 21:27:51 2017	(r314420)
+++ projects/clang400-import/sys/amd64/linux32/linux32_sysent.c	Tue Feb 28 21:30:26 2017	(r314421)
@@ -340,11 +340,11 @@ struct sysent linux32_sysent[] = {
 	{ AS(linux_epoll_pwait_args), (sy_call_t *)linux_epoll_pwait, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC },	/* 319 = linux_epoll_pwait */
 	{ AS(linux_utimensat_args), (sy_call_t *)linux_utimensat, AUE_FUTIMESAT, NULL, 0, 0, 0, SY_THR_STATIC },	/* 320 = linux_utimensat */
 	{ 0, (sy_call_t *)linux_signalfd, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC },	/* 321 = linux_signalfd */
-	{ 0, (sy_call_t *)linux_timerfd_create, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC },	/* 322 = linux_timerfd_create */
+	{ AS(linux_timerfd_create_args), (sy_call_t *)linux_timerfd_create, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC },	/* 322 = linux_timerfd_create */
 	{ AS(linux_eventfd_args), (sy_call_t *)linux_eventfd, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC },	/* 323 = linux_eventfd */
 	{ AS(linux_fallocate_args), (sy_call_t *)linux_fallocate, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC },	/* 324 = linux_fallocate */
-	{ 0, (sy_call_t *)linux_timerfd_settime, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC },	/* 325 = linux_timerfd_settime */
-	{ 0, (sy_call_t *)linux_timerfd_gettime, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC },	/* 326 = linux_timerfd_gettime */
+	{ AS(linux_timerfd_settime_args), (sy_call_t *)linux_timerfd_settime, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC },	/* 325 = linux_timerfd_settime */
+	{ AS(linux_timerfd_gettime_args), (sy_call_t *)linux_timerfd_gettime, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC },	/* 326 = linux_timerfd_gettime */
 	{ 0, (sy_call_t *)linux_signalfd4, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC },	/* 327 = linux_signalfd4 */
 	{ AS(linux_eventfd2_args), (sy_call_t *)linux_eventfd2, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC },	/* 328 = linux_eventfd2 */
 	{ AS(linux_epoll_create1_args), (sy_call_t *)linux_epoll_create1, AUE_NULL, NULL, 0, 0, 0, SY_THR_STATIC },	/* 329 = linux_epoll_create1 */

Modified: projects/clang400-import/sys/amd64/linux32/linux32_systrace_args.c
==============================================================================
--- projects/clang400-import/sys/amd64/linux32/linux32_systrace_args.c	Tue Feb 28 21:27:51 2017	(r314420)
+++ projects/clang400-import/sys/amd64/linux32/linux32_systrace_args.c	Tue Feb 28 21:30:26 2017	(r314421)
@@ -2169,7 +2169,8 @@ systrace_args(int sysnum, void *params, 
 		iarg[2] = p->maxevents; /* l_int */
 		iarg[3] = p->timeout; /* l_int */
 		uarg[4] = (intptr_t) p->mask; /* l_sigset_t * */
-		*n_args = 5;
+		iarg[5] = p->sigsetsize; /* l_size_t */
+		*n_args = 6;
 		break;
 	}
 	/* linux_utimensat */
@@ -2189,7 +2190,10 @@ systrace_args(int sysnum, void *params, 
 	}
 	/* linux_timerfd_create */
 	case 322: {
-		*n_args = 0;
+		struct linux_timerfd_create_args *p = params;
+		iarg[0] = p->clockid; /* l_int */
+		iarg[1] = p->flags; /* l_int */
+		*n_args = 2;
 		break;
 	}
 	/* linux_eventfd */
@@ -2211,12 +2215,20 @@ systrace_args(int sysnum, void *params, 
 	}
 	/* linux_timerfd_settime */
 	case 325: {
-		*n_args = 0;
+		struct linux_timerfd_settime_args *p = params;
+		iarg[0] = p->fd; /* l_int */
+		iarg[1] = p->flags; /* l_int */
+		uarg[2] = (intptr_t) p->new_value; /* const struct l_itimerspec * */
+		uarg[3] = (intptr_t) p->old_value; /* struct l_itimerspec * */
+		*n_args = 4;
 		break;
 	}
 	/* linux_timerfd_gettime */
 	case 326: {
-		*n_args = 0;
+		struct linux_timerfd_gettime_args *p = params;
+		iarg[0] = p->fd; /* l_int */
+		uarg[1] = (intptr_t) p->old_value; /* struct l_itimerspec * */
+		*n_args = 2;
 		break;
 	}
 	/* linux_signalfd4 */
@@ -5970,6 +5982,9 @@ systrace_entry_setargdesc(int sysnum, in
 		case 4:
 			p = "userland l_sigset_t *";
 			break;
+		case 5:
+			p = "l_size_t";
+			break;
 		default:
 			break;
 		};
@@ -5998,6 +6013,16 @@ systrace_entry_setargdesc(int sysnum, in
 		break;
 	/* linux_timerfd_create */
 	case 322:
+		switch(ndx) {
+		case 0:
+			p = "l_int";
+			break;
+		case 1:
+			p = "l_int";
+			break;
+		default:
+			break;
+		};
 		break;
 	/* linux_eventfd */
 	case 323:
@@ -6030,9 +6055,35 @@ systrace_entry_setargdesc(int sysnum, in
 		break;
 	/* linux_timerfd_settime */
 	case 325:
+		switch(ndx) {
+		case 0:
+			p = "l_int";
+			break;
+		case 1:
+			p = "l_int";
+			break;
+		case 2:
+			p = "userland const struct l_itimerspec *";
+			break;
+		case 3:
+			p = "userland struct l_itimerspec *";
+			break;
+		default:
+			break;
+		};
 		break;
 	/* linux_timerfd_gettime */
 	case 326:
+		switch(ndx) {
+		case 0:
+			p = "l_int";
+			break;
+		case 1:
+			p = "userland struct l_itimerspec *";
+			break;
+		default:
+			break;
+		};
 		break;
 	/* linux_signalfd4 */
 	case 327:
@@ -8128,6 +8179,9 @@ systrace_return_setargdesc(int sysnum, i
 	case 321:
 	/* linux_timerfd_create */
 	case 322:
+		if (ndx == 0 || ndx == 1)
+			p = "int";
+		break;
 	/* linux_eventfd */
 	case 323:
 		if (ndx == 0 || ndx == 1)
@@ -8140,8 +8194,14 @@ systrace_return_setargdesc(int sysnum, i
 		break;
 	/* linux_timerfd_settime */
 	case 325:
+		if (ndx == 0 || ndx == 1)
+			p = "int";
+		break;
 	/* linux_timerfd_gettime */
 	case 326:
+		if (ndx == 0 || ndx == 1)
+			p = "int";
+		break;
 	/* linux_signalfd4 */
 	case 327:
 	/* linux_eventfd2 */

Modified: projects/clang400-import/sys/amd64/linux32/syscalls.master
==============================================================================
--- projects/clang400-import/sys/amd64/linux32/syscalls.master	Tue Feb 28 21:27:51 2017	(r314420)
+++ projects/clang400-import/sys/amd64/linux32/syscalls.master	Tue Feb 28 21:30:26 2017	(r314421)
@@ -533,19 +533,23 @@
 ; linux 2.6.19:
 318	AUE_NULL	STD	{ int linux_getcpu(void); }
 319     AUE_NULL        STD     { int linux_epoll_pwait(l_int epfd, struct epoll_event *events, \
-                                        l_int maxevents, l_int timeout, l_sigset_t *mask); }
+                                        l_int maxevents, l_int timeout, l_sigset_t *mask, \
+                                        l_size_t sigsetsize); }
 ; linux 2.6.22:
 320	AUE_FUTIMESAT	STD	{ int linux_utimensat(l_int dfd, const char *pathname, \
 					const struct l_timespec *times, l_int flags); }
 321	AUE_NULL	STD	{ int linux_signalfd(void); }
-322	AUE_NULL	STD	{ int linux_timerfd_create(void); }
+322	AUE_NULL	STD	{ int linux_timerfd_create(l_int clockid, l_int flags); }
 323	AUE_NULL	STD	{ int linux_eventfd(l_uint initval); }
 ; linux 2.6.23:
 324	AUE_NULL	STD	{ int linux_fallocate(l_int fd, l_int mode, \
 				    l_loff_t offset, l_loff_t len); }
 ; linux 2.6.25:
-325	AUE_NULL	STD	{ int linux_timerfd_settime(void); }
-326	AUE_NULL	STD	{ int linux_timerfd_gettime(void); }
+325	AUE_NULL	STD	{ int linux_timerfd_settime(l_int fd, l_int flags,	\
+				    const struct l_itimerspec *new_value,		\
+				    struct l_itimerspec *old_value); }
+326	AUE_NULL	STD	{ int linux_timerfd_gettime(l_int fd,	\
+				    struct l_itimerspec *old_value); }
 ; linux 2.6.27:
 327	AUE_NULL	STD	{ int linux_signalfd4(void); }
 328	AUE_NULL	STD	{ int linux_eventfd2(l_uint initval, l_int flags); }

Modified: projects/clang400-import/sys/arm/allwinner/a31/files.a31
==============================================================================
--- projects/clang400-import/sys/arm/allwinner/a31/files.a31	Tue Feb 28 21:27:51 2017	(r314420)
+++ projects/clang400-import/sys/arm/allwinner/a31/files.a31	Tue Feb 28 21:30:26 2017	(r314421)
@@ -1,5 +1,6 @@
 # $FreeBSD$
 
+arm/allwinner/clkng/ccu_a31.c		standard
 arm/allwinner/a31/a31_padconf.c		standard
 arm/allwinner/a31/a31_r_padconf.c	standard
 arm/allwinner/a31/a31s_padconf.c	standard

Modified: projects/clang400-import/sys/arm/allwinner/files.allwinner
==============================================================================
--- projects/clang400-import/sys/arm/allwinner/files.allwinner	Tue Feb 28 21:27:51 2017	(r314420)
+++ projects/clang400-import/sys/arm/allwinner/files.allwinner	Tue Feb 28 21:30:26 2017	(r314421)
@@ -56,3 +56,8 @@ arm/allwinner/clk/aw_oscclk.c		standard
 arm/allwinner/clk/aw_pll.c		standard
 arm/allwinner/clk/aw_thsclk.c		standard
 arm/allwinner/clk/aw_usbclk.c		standard
+
+arm/allwinner/clkng/aw_ccung.c		standard
+arm/allwinner/clkng/aw_clk_nkmp.c	standard
+arm/allwinner/clkng/aw_clk_nm.c		standard
+arm/allwinner/clkng/aw_clk_prediv_mux.c	standard

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


More information about the svn-src-projects mailing list