Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 16 Jan 2017 19:56:27 +0000 (UTC)
From:      Dimitry Andric <dim@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-projects@freebsd.org
Subject:   svn commit: r312309 - in projects/clang400-import: lib/libc/sys lib/msun/tests libexec/rtld-elf/amd64 release/tools sbin/camcontrol share/man/man4 share/man/man9 share/skel sys/amd64/vmm sys/arm/ar...
Message-ID:  <201701161956.v0GJuR8b026413@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: dim
Date: Mon Jan 16 19:56:27 2017
New Revision: 312309
URL: https://svnweb.freebsd.org/changeset/base/312309

Log:
  Merge ^/head r312207 through r312308.

Added:
  projects/clang400-import/sys/dev/gpio/gpioths.c
     - copied unchanged from r312308, head/sys/dev/gpio/gpioths.c
  projects/clang400-import/tools/regression/sockets/udp_pingpong/
     - copied from r312308, head/tools/regression/sockets/udp_pingpong/
Deleted:
  projects/clang400-import/sys/arm/include/cpuconf.h
Modified:
  projects/clang400-import/lib/libc/sys/getsockopt.2
  projects/clang400-import/lib/msun/tests/Makefile
  projects/clang400-import/lib/msun/tests/fmaxmin_test.c
  projects/clang400-import/libexec/rtld-elf/amd64/rtld_machdep.h
  projects/clang400-import/libexec/rtld-elf/amd64/rtld_start.S
  projects/clang400-import/release/tools/ec2.conf
  projects/clang400-import/sbin/camcontrol/camcontrol.8
  projects/clang400-import/sbin/camcontrol/camcontrol.c
  projects/clang400-import/share/man/man4/alc.4
  projects/clang400-import/share/man/man4/ehci.4
  projects/clang400-import/share/man/man4/iicbus.4
  projects/clang400-import/share/man/man4/scsi.4
  projects/clang400-import/share/man/man9/BUS_CONFIG_INTR.9
  projects/clang400-import/share/man/man9/DEVICE_ATTACH.9
  projects/clang400-import/share/man/man9/DEVICE_IDENTIFY.9
  projects/clang400-import/share/man/man9/DRIVER_MODULE.9
  projects/clang400-import/share/man/man9/bus_generic_attach.9
  projects/clang400-import/share/man/man9/bus_generic_detach.9
  projects/clang400-import/share/man/man9/bus_generic_new_pass.9
  projects/clang400-import/share/man/man9/bus_generic_print_child.9
  projects/clang400-import/share/man/man9/bus_generic_read_ivar.9
  projects/clang400-import/share/man/man9/bus_generic_shutdown.9
  projects/clang400-import/share/man/man9/bus_space.9
  projects/clang400-import/share/man/man9/device.9
  projects/clang400-import/share/man/man9/device_add_child.9
  projects/clang400-import/share/man/man9/pci.9
  projects/clang400-import/share/skel/dot.shrc
  projects/clang400-import/sys/amd64/vmm/vmm_host.h
  projects/clang400-import/sys/arm/arm/bus_space_asm_generic.S
  projects/clang400-import/sys/arm/arm/cpufunc.c
  projects/clang400-import/sys/arm/arm/identcpu-v4.c
  projects/clang400-import/sys/arm/arm/locore-v4.S
  projects/clang400-import/sys/arm/arm/locore-v6.S
  projects/clang400-import/sys/arm/arm/ofw_machdep.c
  projects/clang400-import/sys/arm/arm/trap-v4.c
  projects/clang400-import/sys/arm/freescale/imx/imx6_ccm.c
  projects/clang400-import/sys/arm/freescale/imx/imx6_machdep.c
  projects/clang400-import/sys/arm/freescale/imx/imx_i2c.c
  projects/clang400-import/sys/arm/include/atomic.h
  projects/clang400-import/sys/arm/include/cpufunc.h
  projects/clang400-import/sys/arm/include/pcpu.h
  projects/clang400-import/sys/arm/include/pmap-v4.h
  projects/clang400-import/sys/arm/mv/mv_pci.c
  projects/clang400-import/sys/boot/efi/loader/main.c
  projects/clang400-import/sys/cam/cam_compat.h
  projects/clang400-import/sys/cam/cam_iosched.h
  projects/clang400-import/sys/cam/cam_xpt.c
  projects/clang400-import/sys/cam/cam_xpt_internal.h
  projects/clang400-import/sys/cam/ctl/ctl.c
  projects/clang400-import/sys/cam/ctl/ctl_backend_block.c
  projects/clang400-import/sys/cam/ctl/ctl_backend_ramdisk.c
  projects/clang400-import/sys/cam/ctl/ctl_error.c
  projects/clang400-import/sys/cam/ctl/ctl_error.h
  projects/clang400-import/sys/cam/ctl/ctl_frontend_cam_sim.c
  projects/clang400-import/sys/cam/ctl/ctl_frontend_ioctl.c
  projects/clang400-import/sys/cam/ctl/ctl_frontend_iscsi.c
  projects/clang400-import/sys/cam/ctl/ctl_tpc.c
  projects/clang400-import/sys/cam/ctl/ctl_tpc_local.c
  projects/clang400-import/sys/cam/ctl/ctl_util.c
  projects/clang400-import/sys/cam/ctl/ctl_util.h
  projects/clang400-import/sys/cam/ctl/scsi_ctl.c
  projects/clang400-import/sys/cam/scsi/scsi_all.c
  projects/clang400-import/sys/conf/files
  projects/clang400-import/sys/dev/alc/if_alc.c
  projects/clang400-import/sys/dev/alc/if_alcreg.h
  projects/clang400-import/sys/dev/bhnd/bhnd.h
  projects/clang400-import/sys/dev/etherswitch/arswitch/arswitch.c
  projects/clang400-import/sys/dev/etherswitch/arswitch/arswitch_7240.c
  projects/clang400-import/sys/dev/etherswitch/arswitch/arswitch_8316.c
  projects/clang400-import/sys/dev/etherswitch/arswitch/arswitch_8327.c
  projects/clang400-import/sys/dev/etherswitch/arswitch/arswitch_9340.c
  projects/clang400-import/sys/dev/fdt/simplebus.c
  projects/clang400-import/sys/dev/isp/isp.c
  projects/clang400-import/sys/dev/mmc/mmcreg.h
  projects/clang400-import/sys/dev/mpt/mpt.c
  projects/clang400-import/sys/dev/mpt/mpt.h
  projects/clang400-import/sys/dev/mpt/mpt_raid.c
  projects/clang400-import/sys/dev/pccbb/pccbb_pci.c
  projects/clang400-import/sys/dev/pci/hostb_pci.c
  projects/clang400-import/sys/dev/pci/pci.c
  projects/clang400-import/sys/dev/pci/pci_private.h
  projects/clang400-import/sys/dev/pci/pci_subr.c
  projects/clang400-import/sys/dev/spibus/spibus.c
  projects/clang400-import/sys/dev/usb/usb_hub.c
  projects/clang400-import/sys/kern/bus_if.m
  projects/clang400-import/sys/kern/kern_acct.c
  projects/clang400-import/sys/kern/kern_event.c
  projects/clang400-import/sys/kern/sched_ule.c
  projects/clang400-import/sys/kern/subr_bus.c
  projects/clang400-import/sys/kern/uipc_mbuf.c
  projects/clang400-import/sys/kern/uipc_socket.c
  projects/clang400-import/sys/kern/uipc_usrreq.c
  projects/clang400-import/sys/mips/atheros/ar71xxreg.h
  projects/clang400-import/sys/mips/atheros/uart_bus_ar71xx.c
  projects/clang400-import/sys/net80211/ieee80211.h
  projects/clang400-import/sys/netinet/cc/cc.h
  projects/clang400-import/sys/netinet/ip_input.c
  projects/clang400-import/sys/netinet6/in6_proto.c
  projects/clang400-import/sys/netinet6/ip6_input.c
  projects/clang400-import/sys/sys/ata.h
  projects/clang400-import/sys/sys/buf_ring.h
  projects/clang400-import/sys/sys/bus.h
  projects/clang400-import/sys/sys/busdma_bufalloc.h
  projects/clang400-import/sys/sys/devmap.h
  projects/clang400-import/sys/sys/event.h
  projects/clang400-import/sys/sys/eventvar.h
  projects/clang400-import/sys/sys/gtaskqueue.h
  projects/clang400-import/sys/sys/ksem.h
  projects/clang400-import/sys/sys/pipe.h
  projects/clang400-import/sys/sys/socket.h
  projects/clang400-import/sys/sys/socketvar.h
  projects/clang400-import/sys/sys/sockopt.h
  projects/clang400-import/sys/sys/taskqueue.h
  projects/clang400-import/sys/vm/vm_object.c
  projects/clang400-import/sys/vm/vm_page.c
  projects/clang400-import/sys/x86/pci/pci_bus.c
  projects/clang400-import/sys/x86/x86/mptable.c
  projects/clang400-import/sys/x86/x86/nexus.c
  projects/clang400-import/sys/xen/xenbus/xenbusb.c
  projects/clang400-import/sys/xen/xenbus/xenbusb.h
  projects/clang400-import/tests/sys/kern/acct/Makefile
  projects/clang400-import/tests/sys/vfs/lookup_cap_dotdot.c
  projects/clang400-import/tools/regression/sockets/unix_cmsg/Makefile
  projects/clang400-import/tools/regression/sockets/unix_cmsg/unix_cmsg.c
  projects/clang400-import/usr.sbin/mptutil/mpt_cam.c
Directory Properties:
  projects/clang400-import/   (props changed)

Modified: projects/clang400-import/lib/libc/sys/getsockopt.2
==============================================================================
--- projects/clang400-import/lib/libc/sys/getsockopt.2	Mon Jan 16 19:53:18 2017	(r312308)
+++ projects/clang400-import/lib/libc/sys/getsockopt.2	Mon Jan 16 19:56:27 2017	(r312309)
@@ -187,6 +187,7 @@ The following options are recognized in
 .It Dv SO_LISTENQLEN Ta "get complete queue length of the socket (get only)"
 .It Dv SO_LISTENINCQLEN Ta "get incomplete queue length of the socket (get only)"
 .It Dv SO_USER_COOKIE Ta "set the 'so_user_cookie' value for the socket (uint32_t, set only)"
+.It Dv SO_TS_CLOCK Ta "set specific format of timestamp returned by SO_TIMESTAMP"
 .El
 .Pp
 .Dv SO_DEBUG
@@ -435,7 +436,7 @@ for
 .Dv SO_BINTIME .
 The
 .Vt cmsghdr
-fields have the following values for TIMESTAMP:
+fields have the following values for TIMESTAMP by default:
 .Bd -literal
      cmsg_len = CMSG_LEN(sizeof(struct timeval));
      cmsg_level = SOL_SOCKET;
@@ -450,6 +451,24 @@ and for
      cmsg_type = SCM_BINTIME;
 .Ed
 .Pp
+Additional timestamp types are available by following
+.Dv SO_TIMESTAMP
+with
+.Dv SO_TS_CLOCK ,
+which requests specific timestamp format to be returned instead of
+.Dv SCM_TIMESTAMP when
+.Dv SO_TIMESTAMP is enabled.
+The following
+.Dv SO_TS_CLOCK
+values are recognized in
+.Fx :
+.Bl -column SO_TS_CLOCK -offset indent
+.It Dv SO_TS_REALTIME_MICRO Ta "realtime (SCM_TIMESTAMP, struct timeval), default"
+.It Dv SO_TS_BINTIME Ta "realtime (SCM_BINTIME, struct bintime)"
+.It Dv SO_TS_REALTIME Ta "realtime (SCM_REALTIME, struct timespec)"
+.It Dv SO_TS_MONOTONIC Ta "monotonic time (SCM_MONOTONIC, struct timespec)"
+.El
+.Pp
 .Dv SO_ACCEPTCONN ,
 .Dv SO_TYPE ,
 .Dv SO_PROTOCOL

Modified: projects/clang400-import/lib/msun/tests/Makefile
==============================================================================
--- projects/clang400-import/lib/msun/tests/Makefile	Mon Jan 16 19:53:18 2017	(r312308)
+++ projects/clang400-import/lib/msun/tests/Makefile	Mon Jan 16 19:56:27 2017	(r312309)
@@ -55,10 +55,7 @@ TAP_TESTS_C+=	ctrig_test
 TAP_TESTS_C+=	exponential_test
 TAP_TESTS_C+=	fenv_test
 TAP_TESTS_C+=	fma_test
-# clang 3.8.0 fails always fails this test. See: bug 208703
-.if ! (${COMPILER_TYPE} == "clang" && ${COMPILER_VERSION} >= 30800)
 TAP_TESTS_C+=	fmaxmin_test
-.endif
 TAP_TESTS_C+=	ilogb2_test
 TAP_TESTS_C+=	invtrig_test
 TAP_TESTS_C+=	invctrig_test

Modified: projects/clang400-import/lib/msun/tests/fmaxmin_test.c
==============================================================================
--- projects/clang400-import/lib/msun/tests/fmaxmin_test.c	Mon Jan 16 19:53:18 2017	(r312308)
+++ projects/clang400-import/lib/msun/tests/fmaxmin_test.c	Mon Jan 16 19:56:27 2017	(r312309)
@@ -86,6 +86,8 @@ testall_r(long double big, long double s
 	return (ok);
 }
 
+const char *comment = NULL;
+
 /*
  * Test all the functions: fmaxf, fmax, fmaxl, fminf, fmin, and fminl,
  * in all rounding modes and with the arguments in different orders.
@@ -107,10 +109,17 @@ testall(int testnum, long double big, lo
 			break;
 		}
 	}
-	printf("%sok %d - big = %.20Lg, small = %.20Lg\n",
-	       (i == 4) ? "" : "not ", testnum, big, small);
+	printf("%sok %d - big = %.20Lg, small = %.20Lg%s\n",
+	       (i == 4) ? "" : "not ", testnum, big, small,
+	       comment == NULL ? "" : comment);
 }
 
+/* Clang 3.8.0+ fails the invariants for testcase 6, 7, 10, and 11. */
+#if defined(__clang__) && \
+    (__clang_major__ >= 3 && __clang_minor__ >= 8 && __clang_patchlevel__ >= 0)
+#define	affected_by_bug_208703
+#endif
+
 int
 main(int argc, char *argv[])
 {
@@ -122,15 +131,23 @@ main(int argc, char *argv[])
 	testall(3, nextafterf(42.0, INFINITY), 42.0);
 	testall(4, -5.0, -5.0);
 	testall(5, -3.0, -4.0);
+#ifdef affected_by_bug_208703
+	comment = "# TODO: testcase 6-7 fails invariant with clang 3.8+ (bug 208703)";
+#endif
 	testall(6, 1.0, NAN);
 	testall(7, INFINITY, NAN);
+	comment = NULL;
 	testall(8, INFINITY, 1.0);
 	testall(9, -3.0, -INFINITY);
 	testall(10, 3.0, -INFINITY);
+#ifdef affected_by_bug_208703
+	comment = "# TODO: testcase 11-12 fails invariant with clang 3.8+ (bug 208703)";
+#endif
 	testall(11, NAN, NAN);
 
 	/* This test isn't strictly required to work by C99. */
 	testall(12, 0.0, -0.0);
+	comment = NULL;
 
 	return (0);
 }

Modified: projects/clang400-import/libexec/rtld-elf/amd64/rtld_machdep.h
==============================================================================
--- projects/clang400-import/libexec/rtld-elf/amd64/rtld_machdep.h	Mon Jan 16 19:53:18 2017	(r312308)
+++ projects/clang400-import/libexec/rtld-elf/amd64/rtld_machdep.h	Mon Jan 16 19:56:27 2017	(r312309)
@@ -35,8 +35,8 @@
 struct Struct_Obj_Entry;
 
 /* Return the address of the .dynamic section in the dynamic linker. */
-#define rtld_dynamic(obj) \
-    ((const Elf_Dyn *)((obj)->relocbase + (Elf_Addr)&_DYNAMIC))
+Elf_Dyn *rtld_dynamic_addr(void);
+#define	rtld_dynamic(obj)	rtld_dynamic_addr()
 
 /* Fixup the jump slot at "where" to transfer control to "target". */
 static inline Elf_Addr

Modified: projects/clang400-import/libexec/rtld-elf/amd64/rtld_start.S
==============================================================================
--- projects/clang400-import/libexec/rtld-elf/amd64/rtld_start.S	Mon Jan 16 19:53:18 2017	(r312308)
+++ projects/clang400-import/libexec/rtld-elf/amd64/rtld_start.S	Mon Jan 16 19:56:27 2017	(r312309)
@@ -156,4 +156,16 @@ _rtld_bind_start:
 	.cfi_endproc
 	.size	_rtld_bind_start, . - _rtld_bind_start
 
+	.align	4
+	.globl	rtld_dynamic_addr
+	.type	rtld_dynamic_addr,@function
+rtld_dynamic_addr:
+	.cfi_startproc
+	.weak _DYNAMIC
+	.hidden _DYNAMIC
+	lea	_DYNAMIC(%rip),%rax
+	ret
+	.cfi_endproc
+	.size	rtld_dynamic_addr, . - rtld_dynamic_addr
+
 	.section .note.GNU-stack,"",%progbits

Modified: projects/clang400-import/release/tools/ec2.conf
==============================================================================
--- projects/clang400-import/release/tools/ec2.conf	Mon Jan 16 19:53:18 2017	(r312308)
+++ projects/clang400-import/release/tools/ec2.conf	Mon Jan 16 19:56:27 2017	(r312309)
@@ -6,7 +6,7 @@
 # Packages to install into the image we're creating.  This is a deliberately
 # minimalist set, providing only the packages necessary to bootstrap further
 # package installation as specified via EC2 user-data.
-export VM_EXTRA_PACKAGES="ec2-scripts firstboot-freebsd-update firstboot-pkgs"
+export VM_EXTRA_PACKAGES="ec2-scripts firstboot-freebsd-update firstboot-pkgs dual-dhclient"
 
 # Set to a list of third-party software to enable in rc.conf(5).
 export VM_RC_LIST="ec2_configinit ec2_fetchkey ec2_ephemeralswap ec2_loghostkey firstboot_freebsd_update firstboot_pkgs"
@@ -39,8 +39,9 @@ vm_extra_pre_umount() {
 	# time; expand our filesystem to fill the disk.
 	echo 'growfs_enable="YES"' >> ${DESTDIR}/etc/rc.conf
 
-	# EC2 instances use DHCP to get their network configuration.
-	echo 'ifconfig_DEFAULT="SYNCDHCP"' >> ${DESTDIR}/etc/rc.conf
+	# EC2 instances use DHCP to get their network configuration.  IPv6
+	# requires accept_rtadv.
+	echo 'ifconfig_DEFAULT="SYNCDHCP accept_rtadv"' >> ${DESTDIR}/etc/rc.conf
 
 	# Unless the system has been configured via EC2 user-data, the user
 	# will need to SSH in to do anything.
@@ -51,6 +52,10 @@ vm_extra_pre_umount() {
 	# via EC2 user-data.
 	echo 'firstboot_pkgs_list="awscli"' >> ${DESTDIR}/etc/rc.conf
 
+	# Enable IPv6 on all interfaces, and use DHCP on both IPv4 and IPv6.
+	echo 'ipv6_activate_all_interfaces="YES"' >> ${DESTDIR}/etc/rc.conf
+	echo 'dhclient_program="/usr/local/sbin/dual-dhclient"' >> ${DESTDIR}/etc/rc.conf
+
 	# The EC2 console is output-only, so while printing a backtrace can
 	# be useful, there's no point dropping into a debugger or waiting
 	# for a keypress.

Modified: projects/clang400-import/sbin/camcontrol/camcontrol.8
==============================================================================
--- projects/clang400-import/sbin/camcontrol/camcontrol.8	Mon Jan 16 19:53:18 2017	(r312308)
+++ projects/clang400-import/sbin/camcontrol/camcontrol.8	Mon Jan 16 19:56:27 2017	(r312309)
@@ -27,7 +27,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd January 6, 2017
+.Dd January 15, 2017
 .Dt CAMCONTROL 8
 .Os
 .Sh NAME
@@ -565,12 +565,12 @@ start bit set and the load/eject bit set
 Send the SCSI Start/Stop Unit (0x1B) command to the given device with the
 start bit cleared and the load/eject bit set.
 .It Ic rescan
-Tell the kernel to scan all busses in the system (with the
+Tell the kernel to scan all buses in the system (with the
 .Ar all
 argument), the given bus (XPT_SCAN_BUS), or bus:target:lun
 (XPT_SCAN_LUN) for new devices or devices that have gone away.
 The user
-may specify a scan of all busses, a single bus, or a lun.
+may specify a scan of all buses, a single bus, or a lun.
 Scanning all luns
 on a target is not supported.
 .It Ic reprobe
@@ -580,7 +580,7 @@ notify the upper layer,
 This includes sending the SCSI READ CAPACITY command and updating
 the disk size visible to the rest of the system.
 .It Ic reset
-Tell the kernel to reset all busses in the system (with the
+Tell the kernel to reset all buses in the system (with the
 .Ar all
 argument) or the given bus (XPT_RESET_BUS) by issuing a SCSI bus
 reset for that bus, or to reset the given bus:target:lun
@@ -2557,7 +2557,7 @@ write reallocation settings, among other
 .Pp
 .Dl camcontrol rescan all
 .Pp
-Rescan all SCSI busses in the system for devices that have been added,
+Rescan all SCSI buses in the system for devices that have been added,
 removed or changed.
 .Pp
 .Dl camcontrol rescan 0

Modified: projects/clang400-import/sbin/camcontrol/camcontrol.c
==============================================================================
--- projects/clang400-import/sbin/camcontrol/camcontrol.c	Mon Jan 16 19:53:18 2017	(r312308)
+++ projects/clang400-import/sbin/camcontrol/camcontrol.c	Mon Jan 16 19:56:27 2017	(r312309)
@@ -3179,8 +3179,8 @@ rescan_or_reset_bus(path_id_t bus, int r
 	/*
 	 * The right way to handle this is to modify the xpt so that it can
 	 * handle a wildcarded bus in a rescan or reset CCB.  At the moment
-	 * that isn't implemented, so instead we enumerate the busses and
-	 * send the rescan or reset to those busses in the case where the
+	 * that isn't implemented, so instead we enumerate the buses and
+	 * send the rescan or reset to those buses in the case where the
 	 * given bus is -1 (wildcard).  We don't send a rescan or reset
 	 * to the xpt bus; sending a rescan to the xpt bus is effectively a
 	 * no-op, sending a rescan to the xpt bus would result in a status of
@@ -4150,7 +4150,7 @@ scsicmd(struct cam_device *device, int a
 	u_int8_t cdb[20];
 	u_int8_t atacmd[12];
 	struct get_hook hook;
-	int c, data_bytes = 0;
+	int c, data_bytes = 0, valid_bytes;
 	int cdb_len = 0;
 	int atacmd_len = 0;
 	int dmacmd = 0;
@@ -4454,16 +4454,20 @@ scsicmd(struct cam_device *device, int a
 		}
 	}
 
+	if (cdb_len)
+		valid_bytes = ccb->csio.dxfer_len - ccb->csio.resid;
+	else
+		valid_bytes = ccb->ataio.dxfer_len - ccb->ataio.resid;
 	if (((ccb->ccb_h.status & CAM_STATUS_MASK) == CAM_REQ_CMP)
 	 && (arglist & CAM_ARG_CMD_IN)
-	 && (data_bytes > 0)) {
+	 && (valid_bytes > 0)) {
 		if (fd_data == 0) {
-			buff_decode_visit(data_ptr, data_bytes, datastr,
+			buff_decode_visit(data_ptr, valid_bytes, datastr,
 					  arg_put, NULL);
 			fprintf(stdout, "\n");
 		} else {
 			ssize_t amt_written;
-			int amt_to_write = data_bytes;
+			int amt_to_write = valid_bytes;
 			u_int8_t *buf_ptr = data_ptr;
 
 			for (amt_written = 0; (amt_to_write > 0) &&
@@ -4478,7 +4482,7 @@ scsicmd(struct cam_device *device, int a
 			} else if ((amt_written == 0)
 				&& (amt_to_write > 0)) {
 				warnx("only wrote %u bytes out of %u",
-				      data_bytes - amt_to_write, data_bytes);
+				      valid_bytes - amt_to_write, valid_bytes);
 			}
 		}
 	}
@@ -8950,8 +8954,8 @@ usage(int printlong)
 "load        send a Start Unit command to the device with the load bit set\n"
 "eject       send a Stop Unit command to the device with the eject bit set\n"
 "reprobe     update capacity information of the given device\n"
-"rescan      rescan all busses, the given bus, or bus:target:lun\n"
-"reset       reset all busses, the given bus, or bus:target:lun\n"
+"rescan      rescan all buses, the given bus, or bus:target:lun\n"
+"reset       reset all buses, the given bus, or bus:target:lun\n"
 "defects     read the defect list of the specified device\n"
 "modepage    display or edit (-e) the given mode page\n"
 "cmd         send the given SCSI command, may need -i or -o as well\n"

Modified: projects/clang400-import/share/man/man4/alc.4
==============================================================================
--- projects/clang400-import/share/man/man4/alc.4	Mon Jan 16 19:53:18 2017	(r312308)
+++ projects/clang400-import/share/man/man4/alc.4	Mon Jan 16 19:56:27 2017	(r312309)
@@ -124,6 +124,8 @@ Atheros AR8172 PCI Express Fast Ethernet
 Killer E2200 Gigabit Ethernet controller
 .It
 Killer E2400 Gigabit Ethernet controller
+.It
+Killer E2500 Gigabit Ethernet controller
 .El
 .Sh LOADER TUNABLES
 Tunables can be set at the

Modified: projects/clang400-import/share/man/man4/ehci.4
==============================================================================
--- projects/clang400-import/share/man/man4/ehci.4	Mon Jan 16 19:53:18 2017	(r312308)
+++ projects/clang400-import/share/man/man4/ehci.4	Mon Jan 16 19:56:27 2017	(r312309)
@@ -29,7 +29,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd March 4, 2012
+.Dd January 15, 2017
 .Dt EHCI 4
 .Os
 .Sh NAME
@@ -68,7 +68,7 @@ but can be noticed since
 1.x and
 .Tn USB
 2.0 devices plugged in to the same
-connector appear to connect to different USB busses.
+connector appear to connect to different USB buses.
 .Sh SEE ALSO
 .Xr ohci 4 ,
 .Xr uhci 4 ,

Modified: projects/clang400-import/share/man/man4/iicbus.4
==============================================================================
--- projects/clang400-import/share/man/man4/iicbus.4	Mon Jan 16 19:53:18 2017	(r312308)
+++ projects/clang400-import/share/man/man4/iicbus.4	Mon Jan 16 19:56:27 2017	(r312309)
@@ -24,7 +24,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd November 17, 2014
+.Dd January 15, 2017
 .Dt IICBUS 4
 .Os
 .Sh NAME
@@ -112,11 +112,11 @@ different speed.
 A general purpose I2C bus, such as those found in many embedded systems,
 will often support multiple bus frequencies.
 .Pp
-When a system supports multiple I2C busses, a different frequency can
+When a system supports multiple I2C buses, a different frequency can
 be configured for each bus by number, represented by the
 .Va %d
 in the variable names below.
-Busses can be configured using any combination of device hints,
+Buses can be configured using any combination of device hints,
 Flattened Device Tree (FDT) data, tunables set via
 .Xr loader 8 ,
 or at runtime using

Modified: projects/clang400-import/share/man/man4/scsi.4
==============================================================================
--- projects/clang400-import/share/man/man4/scsi.4	Mon Jan 16 19:53:18 2017	(r312308)
+++ projects/clang400-import/share/man/man4/scsi.4	Mon Jan 16 19:56:27 2017	(r312309)
@@ -24,7 +24,7 @@
 .\" SUCH DAMAGE.
 .\"
 .\" $FreeBSD$
-.Dd June 7, 2012
+.Dd January 15, 2017
 .Dt CAM 4
 .Os
 .Sh NAME
@@ -62,7 +62,7 @@ devices, and to utilize different
 and
 .Tn ATA
 host adapters through host adapter drivers.
-When the system probes busses, it attaches any devices it finds to the
+When the system probes buses, it attaches any devices it finds to the
 appropriate drivers.
 The
 .Xr pass 4
@@ -150,7 +150,7 @@ In that case, the
 will be reset to 100ms.
 .El
 .Pp
-All devices and busses support dynamic allocation so that
+All devices and buses support dynamic allocation so that
 an upper number of devices and controllers does not need to be configured;
 .Cd "device da"
 will suffice for any number of disk drivers.
@@ -297,7 +297,7 @@ see printfs for multiple debugging level
 This allows to set the various debugging flags from a kernel config file.
 .It Dv CAM_DEBUG_BUS
 Specify a bus to debug.
-To debug all busses, set this to -1.
+To debug all buses, set this to -1.
 .It Dv CAM_DEBUG_TARGET
 Specify a target to debug.
 To debug all targets, set this to -1.

Modified: projects/clang400-import/share/man/man9/BUS_CONFIG_INTR.9
==============================================================================
--- projects/clang400-import/share/man/man9/BUS_CONFIG_INTR.9	Mon Jan 16 19:53:18 2017	(r312308)
+++ projects/clang400-import/share/man/man9/BUS_CONFIG_INTR.9	Mon Jan 16 19:56:27 2017	(r312309)
@@ -25,7 +25,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd January 6, 2005
+.Dd January 15, 2017
 .Dt BUS_CONFIG_INTR 9
 .Os
 .\"
@@ -45,7 +45,7 @@
 The
 .Fn BUS_CONFIG_INTR
 method allows bus or device drivers to provide interrupt polarity and trigger
-mode to parent busses.
+mode to parent buses.
 This typically bubbles all the way up to the root bus (e.g.\& nexus) where the
 necessary actions are taken to actually program the hardware.
 Since the

Modified: projects/clang400-import/share/man/man9/DEVICE_ATTACH.9
==============================================================================
--- projects/clang400-import/share/man/man9/DEVICE_ATTACH.9	Mon Jan 16 19:53:18 2017	(r312308)
+++ projects/clang400-import/share/man/man9/DEVICE_ATTACH.9	Mon Jan 16 19:56:27 2017	(r312309)
@@ -28,7 +28,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd January 6, 2005
+.Dd January 15, 2017
 .Dt DEVICE_ATTACH 9
 .Os
 .Sh NAME
@@ -51,7 +51,7 @@ system resources (such as
 .Xr devfs 5
 entries).
 .Pp
-Devices which implement busses should use this method to probe for
+Devices which implement buses should use this method to probe for
 the existence of devices attached to the bus and add them as
 children.
 If this is combined with the use of

Modified: projects/clang400-import/share/man/man9/DEVICE_IDENTIFY.9
==============================================================================
--- projects/clang400-import/share/man/man9/DEVICE_IDENTIFY.9	Mon Jan 16 19:53:18 2017	(r312308)
+++ projects/clang400-import/share/man/man9/DEVICE_IDENTIFY.9	Mon Jan 16 19:56:27 2017	(r312309)
@@ -28,7 +28,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd May 13, 2004
+.Dd January 15, 2017
 .Dt DEVICE_IDENTIFY 9
 .Os
 .Sh NAME
@@ -40,7 +40,7 @@
 .Ft void
 .Fn DEVICE_IDENTIFY "driver_t *driver" "device_t parent"
 .Sh DESCRIPTION
-The identify function for a device is only needed for devices on busses
+The identify function for a device is only needed for devices on buses
 that cannot identify their children independently, e.g.\& the ISA bus.
 It is used to recognize the device (usually done by accessing non-ambiguous
 registers in the hardware) and to tell the kernel about it and thus

Modified: projects/clang400-import/share/man/man9/DRIVER_MODULE.9
==============================================================================
--- projects/clang400-import/share/man/man9/DRIVER_MODULE.9	Mon Jan 16 19:53:18 2017	(r312308)
+++ projects/clang400-import/share/man/man9/DRIVER_MODULE.9	Mon Jan 16 19:56:27 2017	(r312309)
@@ -28,7 +28,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd August 21, 2012
+.Dd January 15, 2017
 .Dt DRIVER_MODULE 9
 .Os
 .Sh NAME
@@ -69,9 +69,9 @@ or
 The identifier used in
 .Fn DRIVER_MODULE
 can be different from the driver name.
-Also, the same driver identifier can exist on different busses,
+Also, the same driver identifier can exist on different buses,
 which is a pretty clean way of making front ends for different cards
-using the same driver on the same or different busses.
+using the same driver on the same or different buses.
 For example, the following is allowed:
 .Pp
 .Fn DRIVER_MODULE foo isa foo_driver foo_devclass NULL NULL ;

Modified: projects/clang400-import/share/man/man9/bus_generic_attach.9
==============================================================================
--- projects/clang400-import/share/man/man9/bus_generic_attach.9	Mon Jan 16 19:53:18 2017	(r312308)
+++ projects/clang400-import/share/man/man9/bus_generic_attach.9	Mon Jan 16 19:56:27 2017	(r312309)
@@ -28,14 +28,14 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd June 16, 1998
+.Dd January 15, 2017
 .Dt BUS_GENERIC_ATTACH 9
 .Os
 .Sh NAME
 .Nm bus_generic_attach
 .Nd generic implementation of
 .Dv DEVICE_ATTACH
-for busses
+for buses
 .Sh SYNOPSIS
 .In sys/param.h
 .In sys/bus.h

Modified: projects/clang400-import/share/man/man9/bus_generic_detach.9
==============================================================================
--- projects/clang400-import/share/man/man9/bus_generic_detach.9	Mon Jan 16 19:53:18 2017	(r312308)
+++ projects/clang400-import/share/man/man9/bus_generic_detach.9	Mon Jan 16 19:56:27 2017	(r312309)
@@ -28,14 +28,14 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd June 16, 1998
+.Dd January 15, 2017
 .Dt BUS_GENERIC_DETACH 9
 .Os
 .Sh NAME
 .Nm bus_generic_detach
 .Nd generic implementation of
 .Dv DEVICE_DETACH
-for busses
+for buses
 .Sh SYNOPSIS
 .In sys/param.h
 .In sys/bus.h

Modified: projects/clang400-import/share/man/man9/bus_generic_new_pass.9
==============================================================================
--- projects/clang400-import/share/man/man9/bus_generic_new_pass.9	Mon Jan 16 19:53:18 2017	(r312308)
+++ projects/clang400-import/share/man/man9/bus_generic_new_pass.9	Mon Jan 16 19:56:27 2017	(r312309)
@@ -27,7 +27,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd June 8, 2009
+.Dd January 15, 2017
 .Dt BUS_GENERIC_NEW_PASS 9
 .Os
 .Sh NAME
@@ -47,7 +47,7 @@ It first invokes the
 method for any drivers whose pass level is equal to the new pass level.
 Then, for each attached child device it calls
 .Xr BUS_NEW_PASS 9
-to rescan child busses,
+to rescan child buses,
 and for each unattached child device it calls
 .Xr device_probe_and_attach 9 .
 .Sh SEE ALSO

Modified: projects/clang400-import/share/man/man9/bus_generic_print_child.9
==============================================================================
--- projects/clang400-import/share/man/man9/bus_generic_print_child.9	Mon Jan 16 19:53:18 2017	(r312308)
+++ projects/clang400-import/share/man/man9/bus_generic_print_child.9	Mon Jan 16 19:56:27 2017	(r312309)
@@ -28,14 +28,14 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd June 16, 1998
+.Dd January 15, 2017
 .Dt BUS_GENERIC_PRINT_CHILD 9
 .Os
 .Sh NAME
 .Nm bus_generic_print_child
 .Nd generic implementation of
 .Dv DEVICE_PRINT_CHILD
-for busses
+for buses
 .Sh SYNOPSIS
 .In sys/param.h
 .In sys/bus.h

Modified: projects/clang400-import/share/man/man9/bus_generic_read_ivar.9
==============================================================================
--- projects/clang400-import/share/man/man9/bus_generic_read_ivar.9	Mon Jan 16 19:53:18 2017	(r312308)
+++ projects/clang400-import/share/man/man9/bus_generic_read_ivar.9	Mon Jan 16 19:56:27 2017	(r312309)
@@ -28,7 +28,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd June 16, 1998
+.Dd January 15, 2017
 .Dt BUS_GENERIC_READ_IVAR 9
 .Os
 .Sh NAME
@@ -38,7 +38,7 @@
 .Dv BUS_READ_IVAR
 and
 .Dv BUS_WRITE_IVAR
-for busses
+for buses
 .Sh SYNOPSIS
 .In sys/param.h
 .In sys/bus.h

Modified: projects/clang400-import/share/man/man9/bus_generic_shutdown.9
==============================================================================
--- projects/clang400-import/share/man/man9/bus_generic_shutdown.9	Mon Jan 16 19:53:18 2017	(r312308)
+++ projects/clang400-import/share/man/man9/bus_generic_shutdown.9	Mon Jan 16 19:56:27 2017	(r312309)
@@ -28,14 +28,14 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd June 16, 1998
+.Dd January 15, 2017
 .Dt BUS_GENERIC_SHUTDOWN 9
 .Os
 .Sh NAME
 .Nm bus_generic_shutdown
 .Nd generic implementation of
 .Dv DEVICE_SHUTDOWN
-for busses
+for buses
 .Sh SYNOPSIS
 .In sys/param.h
 .In sys/bus.h

Modified: projects/clang400-import/share/man/man9/bus_space.9
==============================================================================
--- projects/clang400-import/share/man/man9/bus_space.9	Mon Jan 16 19:53:18 2017	(r312308)
+++ projects/clang400-import/share/man/man9/bus_space.9	Mon Jan 16 19:56:27 2017	(r312309)
@@ -51,7 +51,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd June 13, 2005
+.Dd January 15, 2017
 .Dt BUS_SPACE 9
 .Os
 .Sh NAME
@@ -601,7 +601,7 @@ of devices on different system architect
 object file to manipulate a set of devices on multiple bus types on a
 single architecture.
 .Pp
-Not all busses have to implement all functions described in this
+Not all buses have to implement all functions described in this
 document, though that is encouraged if the operations are logically
 supported by the bus.
 Unimplemented functions should cause
@@ -625,7 +625,7 @@ machine-dependent code.
 A given machine may have several different types
 of bus space (e.g.\& memory space and I/O space), and thus may provide
 multiple different bus space tags.
-Individual busses or devices on a machine may use more than one bus space
+Individual buses or devices on a machine may use more than one bus space
 tag.
 For instance, ISA devices are
 given an ISA memory space tag and an ISA I/O space tag.
@@ -639,7 +639,7 @@ The
 bus address describes the start of the range in bus space.
 The bus
 size describes the size of the range in bytes.
-Busses which are not byte
+Buses which are not byte
 addressable may require use of bus space ranges with appropriately
 aligned addresses and properly rounded sizes.
 .Pp
@@ -656,7 +656,7 @@ argument, at least one handle argument, 
 The bus space tag specifies the space, each handle specifies a region in
 the space, and each offset specifies the offset into the region of the
 actual location(s) to be accessed.
-Offsets are given in bytes, though busses
+Offsets are given in bytes, though buses
 may impose alignment constraints.
 The offset used to access data
 relative to a given handle must be such that all of the data being
@@ -1049,7 +1049,7 @@ The
 and
 .Fn bus_space_write_N
 families of functions provide
-the ability to read and write 1, 2, 4, and 8 byte data items on busses
+the ability to read and write 1, 2, 4, and 8 byte data items on buses
 which support those access sizes.
 .Ss Fn bus_space_read_1 space handle offset
 .Ss Fn bus_space_read_2 space handle offset

Modified: projects/clang400-import/share/man/man9/device.9
==============================================================================
--- projects/clang400-import/share/man/man9/device.9	Mon Jan 16 19:53:18 2017	(r312308)
+++ projects/clang400-import/share/man/man9/device.9	Mon Jan 16 19:56:27 2017	(r312309)
@@ -28,7 +28,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd June 16, 1998
+.Dd January 15, 2017
 .Dt DEVICE 9
 .Os
 .Sh NAME
@@ -44,7 +44,7 @@ The system defines one device,
 .Va root_bus
 and all other devices are created dynamically during
 autoconfiguration.
-Normally devices representing top-level busses in
+Normally devices representing top-level buses in
 the system (ISA, PCI etc.) will be attached directly to
 .Va root_bus
 and other devices will be added as children of their relevant bus.

Modified: projects/clang400-import/share/man/man9/device_add_child.9
==============================================================================
--- projects/clang400-import/share/man/man9/device_add_child.9	Mon Jan 16 19:53:18 2017	(r312308)
+++ projects/clang400-import/share/man/man9/device_add_child.9	Mon Jan 16 19:56:27 2017	(r312309)
@@ -28,7 +28,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd October 28, 2015
+.Dd January 15, 2017
 .Dt DEVICE_ADD_CHILD 9
 .Os
 .Sh NAME
@@ -63,10 +63,10 @@ If no name is given then all drivers for
 In any event, only the name of the device is stored so that one may
 safely unload/load a driver bound to that name.
 .Pp
-This allows busses which can uniquely identify device instances (such
+This allows buses which can uniquely identify device instances (such
 as PCI) to allow each driver to check each device instance for a
 match.
-For busses which rely on supplied probe hints where only one
+For buses which rely on supplied probe hints where only one
 driver can have a chance of probing the device, the driver name should
 be specified as the device name.
 .Pp

Modified: projects/clang400-import/share/man/man9/pci.9
==============================================================================
--- projects/clang400-import/share/man/man9/pci.9	Mon Jan 16 19:53:18 2017	(r312308)
+++ projects/clang400-import/share/man/man9/pci.9	Mon Jan 16 19:56:27 2017	(r312309)
@@ -25,7 +25,7 @@
 .\"
 .\" $FreeBSD$
 .\"
-.Dd September 6, 2016
+.Dd January 15, 2017
 .Dt PCI 9
 .Os
 .Sh NAME
@@ -583,14 +583,14 @@ full functionality to the user.
 .It Dv PCI_POWERSTATE_D1
 Class-specific low-power state in which device context may or
 may not be lost.
-Busses in this state cannot do anything to the bus, to
+Buses in this state cannot do anything to the bus, to
 force devices to lose context.
 .It Dv PCI_POWERSTATE_D2
 Class-specific low-power state in which device context may or
 may not be lost.
 Attains greater power savings than
 .Dv PCI_POWERSTATE_D1 .
-Busses in this state can cause devices to lose some context.
+Buses in this state can cause devices to lose some context.
 Devices
 .Em must
 be prepared for the bus to be in this state or higher.

Modified: projects/clang400-import/share/skel/dot.shrc
==============================================================================
--- projects/clang400-import/share/skel/dot.shrc	Mon Jan 16 19:53:18 2017	(r312308)
+++ projects/clang400-import/share/skel/dot.shrc	Mon Jan 16 19:56:27 2017	(r312309)
@@ -13,10 +13,6 @@
 #
 # umask	022
 
-# Enable the builtin emacs(1) command line editor in sh(1),
-# e.g. C-a -> beginning-of-line.
-set -o emacs
-
 # Uncomment this and comment the above to enable the builtin vi(1) command
 # line editor in sh(1), e.g. ESC to go into visual mode.
 # set -o vi

Modified: projects/clang400-import/sys/amd64/vmm/vmm_host.h
==============================================================================
--- projects/clang400-import/sys/amd64/vmm/vmm_host.h	Mon Jan 16 19:53:18 2017	(r312308)
+++ projects/clang400-import/sys/amd64/vmm/vmm_host.h	Mon Jan 16 19:56:27 2017	(r312309)
@@ -30,7 +30,7 @@
 #define	_VMM_HOST_H_
 
 #ifndef	_KERNEL
-#error "no user-servicable parts inside"
+#error "no user-serviceable parts inside"
 #endif
 
 struct xsave_limits {

Modified: projects/clang400-import/sys/arm/arm/bus_space_asm_generic.S
==============================================================================
--- projects/clang400-import/sys/arm/arm/bus_space_asm_generic.S	Mon Jan 16 19:53:18 2017	(r312308)
+++ projects/clang400-import/sys/arm/arm/bus_space_asm_generic.S	Mon Jan 16 19:56:27 2017	(r312309)
@@ -36,7 +36,6 @@
  */
 
 #include <machine/asm.h>
-#include <machine/cpuconf.h>
 __FBSDID("$FreeBSD$");
 
 /*

Modified: projects/clang400-import/sys/arm/arm/cpufunc.c
==============================================================================
--- projects/clang400-import/sys/arm/arm/cpufunc.c	Mon Jan 16 19:53:18 2017	(r312308)
+++ projects/clang400-import/sys/arm/arm/cpufunc.c	Mon Jan 16 19:56:27 2017	(r312309)
@@ -57,7 +57,6 @@ __FBSDID("$FreeBSD$");
 #include <vm/pmap.h>
 #include <vm/uma.h>
 
-#include <machine/cpuconf.h>
 #include <machine/cpufunc.h>
 
 #if defined(CPU_XSCALE_81342)

Modified: projects/clang400-import/sys/arm/arm/identcpu-v4.c
==============================================================================
--- projects/clang400-import/sys/arm/arm/identcpu-v4.c	Mon Jan 16 19:53:18 2017	(r312308)
+++ projects/clang400-import/sys/arm/arm/identcpu-v4.c	Mon Jan 16 19:56:27 2017	(r312309)
@@ -51,7 +51,6 @@ __FBSDID("$FreeBSD$");
 #include <machine/cpu.h>
 #include <machine/endian.h>
 
-#include <machine/cpuconf.h>
 #include <machine/md_var.h>
 
 char machine[] = "arm";

Modified: projects/clang400-import/sys/arm/arm/locore-v4.S
==============================================================================
--- projects/clang400-import/sys/arm/arm/locore-v4.S	Mon Jan 16 19:53:18 2017	(r312308)
+++ projects/clang400-import/sys/arm/arm/locore-v4.S	Mon Jan 16 19:56:27 2017	(r312309)
@@ -37,7 +37,6 @@
 #include <sys/syscall.h>
 #include <machine/asm.h>
 #include <machine/armreg.h>
-#include <machine/cpuconf.h>
 #include <machine/pte-v4.h>
 
 __FBSDID("$FreeBSD$");

Modified: projects/clang400-import/sys/arm/arm/locore-v6.S
==============================================================================
--- projects/clang400-import/sys/arm/arm/locore-v6.S	Mon Jan 16 19:53:18 2017	(r312308)
+++ projects/clang400-import/sys/arm/arm/locore-v6.S	Mon Jan 16 19:56:27 2017	(r312309)
@@ -34,7 +34,6 @@
 #include <machine/asmacros.h>
 #include <machine/armreg.h>
 #include <machine/sysreg.h>
-#include <machine/cpuconf.h>
 #include <machine/pte-v6.h>
 
 __FBSDID("$FreeBSD$");

Modified: projects/clang400-import/sys/arm/arm/ofw_machdep.c
==============================================================================
--- projects/clang400-import/sys/arm/arm/ofw_machdep.c	Mon Jan 16 19:53:18 2017	(r312308)
+++ projects/clang400-import/sys/arm/arm/ofw_machdep.c	Mon Jan 16 19:56:27 2017	(r312309)
@@ -50,7 +50,7 @@ OF_decode_addr(phandle_t dev, int regno,
 		return (res);
 
 	/*
-	 * Nothing special to do for PCI busses right now.
+	 * Nothing special to do for PCI buses right now.
 	 * This may need to be handled per-platform when it does come up.
 	 */
 #ifdef notyet

Modified: projects/clang400-import/sys/arm/arm/trap-v4.c
==============================================================================
--- projects/clang400-import/sys/arm/arm/trap-v4.c	Mon Jan 16 19:53:18 2017	(r312308)
+++ projects/clang400-import/sys/arm/arm/trap-v4.c	Mon Jan 16 19:56:27 2017	(r312309)
@@ -139,11 +139,7 @@ static const struct data_abort data_abor
 	{dab_align,	"Alignment Fault 3"},
 	{dab_buserr,	"External Linefetch Abort (S)"},
 	{NULL,		"Translation Fault (S)"},
-#if (ARM_MMU_V6 + ARM_MMU_V7) != 0
-	{NULL,		"Translation Flag Fault"},
-#else
 	{dab_buserr,	"External Linefetch Abort (P)"},
-#endif
 	{NULL,		"Translation Fault (P)"},
 	{dab_buserr,	"External Non-Linefetch Abort (S)"},
 	{NULL,		"Domain Fault (S)"},

Modified: projects/clang400-import/sys/arm/freescale/imx/imx6_ccm.c
==============================================================================
--- projects/clang400-import/sys/arm/freescale/imx/imx6_ccm.c	Mon Jan 16 19:53:18 2017	(r312308)
+++ projects/clang400-import/sys/arm/freescale/imx/imx6_ccm.c	Mon Jan 16 19:56:27 2017	(r312309)
@@ -90,7 +90,7 @@ ccm_init_gates(struct ccm_softc *sc)
 {
 	uint32_t reg;
 
- 	/* ahpbdma, aipstz 1 & 2 busses */
+ 	/* ahpbdma, aipstz 1 & 2 buses */
 	reg = CCGR0_AIPS_TZ1 | CCGR0_AIPS_TZ2 | CCGR0_ABPHDMA;
 	WR4(sc, CCM_CCGR0, reg);
 

Modified: projects/clang400-import/sys/arm/freescale/imx/imx6_machdep.c
==============================================================================
--- projects/clang400-import/sys/arm/freescale/imx/imx6_machdep.c	Mon Jan 16 19:53:18 2017	(r312308)
+++ projects/clang400-import/sys/arm/freescale/imx/imx6_machdep.c	Mon Jan 16 19:56:27 2017	(r312309)
@@ -117,7 +117,7 @@ fdt_pic_decode_t fdt_pic_table[] = {
  *  - GIC node exists and is its own interrupt parent.
  *
  * This applies to all models of imx6.  Luckily all of them have the devices
- * involved at the same addresses on the same busses, so we don't need any
+ * involved at the same addresses on the same buses, so we don't need any
  * per-soc logic.  We handle this at platform attach time rather than via the
  * fdt_fixup_table, because the latter requires matching on the FDT "model"
  * property, and this applies to all boards including those not yet invented.

Modified: projects/clang400-import/sys/arm/freescale/imx/imx_i2c.c
==============================================================================
--- projects/clang400-import/sys/arm/freescale/imx/imx_i2c.c	Mon Jan 16 19:53:18 2017	(r312308)
+++ projects/clang400-import/sys/arm/freescale/imx/imx_i2c.c	Mon Jan 16 19:56:27 2017	(r312309)
@@ -35,7 +35,7 @@
  * Note that the hardware is capable of running as both a master and a slave.
  * This driver currently implements only master-mode operations.
  *
- * This driver supports multi-master i2c busses, by detecting bus arbitration
+ * This driver supports multi-master i2c buses, by detecting bus arbitration
  * loss and returning IIC_EBUSBSY status.  Notably, it does not do any kind of
  * retries if some other master jumps onto the bus and interrupts one of our
  * transfer cycles resulting in arbitration loss in mid-transfer.  The caller

Modified: projects/clang400-import/sys/arm/include/atomic.h
==============================================================================
--- projects/clang400-import/sys/arm/include/atomic.h	Mon Jan 16 19:53:18 2017	(r312308)
+++ projects/clang400-import/sys/arm/include/atomic.h	Mon Jan 16 19:56:27 2017	(r312309)
@@ -44,8 +44,6 @@
 
 #ifndef _KERNEL
 #include <machine/sysarch.h>
-#else
-#include <machine/cpuconf.h>
 #endif
 
 #if __ARM_ARCH >= 6

Modified: projects/clang400-import/sys/arm/include/cpufunc.h
==============================================================================
--- projects/clang400-import/sys/arm/include/cpufunc.h	Mon Jan 16 19:53:18 2017	(r312308)
+++ projects/clang400-import/sys/arm/include/cpufunc.h	Mon Jan 16 19:56:27 2017	(r312309)
@@ -48,7 +48,6 @@
 
 #include <sys/types.h>
 #include <machine/armreg.h>
-#include <machine/cpuconf.h>
 
 static __inline void
 breakpoint(void)

Modified: projects/clang400-import/sys/arm/include/pcpu.h
==============================================================================
--- projects/clang400-import/sys/arm/include/pcpu.h	Mon Jan 16 19:53:18 2017	(r312308)
+++ projects/clang400-import/sys/arm/include/pcpu.h	Mon Jan 16 19:56:27 2017	(r312309)
@@ -32,8 +32,6 @@
 
 #ifdef _KERNEL
 
-#include <machine/cpuconf.h>
-
 #define	ALT_STACK_SIZE	128
 
 struct vmspace;

Modified: projects/clang400-import/sys/arm/include/pmap-v4.h
==============================================================================
--- projects/clang400-import/sys/arm/include/pmap-v4.h	Mon Jan 16 19:53:18 2017	(r312308)
+++ projects/clang400-import/sys/arm/include/pmap-v4.h	Mon Jan 16 19:56:27 2017	(r312309)
@@ -51,7 +51,30 @@
 #define _MACHINE_PMAP_V4_H_
 
 #include <machine/pte-v4.h>
-#include <machine/cpuconf.h>
+
+/*
+ * Define the MMU types we support based on the cpu types.  While the code has
+ * some theoretical support for multiple MMU types in a single kernel, there are
+ * no actual working configurations that use that feature.
+ */
+#if (defined(CPU_ARM9) || defined(CPU_ARM9E) ||	defined(CPU_FA526))
+#define	ARM_MMU_GENERIC		1
+#else
+#define	ARM_MMU_GENERIC		0
+#endif
+
+#if (defined(CPU_XSCALE_PXA2X0) || defined(CPU_XSCALE_IXP425) ||	\
+     defined(CPU_XSCALE_81342))
+#define	ARM_MMU_XSCALE		1
+#else
+#define	ARM_MMU_XSCALE		0
+#endif
+
+#define	ARM_NMMUS		(ARM_MMU_GENERIC + ARM_MMU_XSCALE)
+#if ARM_NMMUS == 0 && !defined(KLD_MODULE) && defined(_KERNEL)
+#error ARM_NMMUS is 0
+#endif
+
 /*
  * Pte related macros
  */

Modified: projects/clang400-import/sys/arm/mv/mv_pci.c
==============================================================================
--- projects/clang400-import/sys/arm/mv/mv_pci.c	Mon Jan 16 19:53:18 2017	(r312308)
+++ projects/clang400-import/sys/arm/mv/mv_pci.c	Mon Jan 16 19:56:27 2017	(r312309)
@@ -147,7 +147,7 @@ mv_pci_ranges_decode(phandle_t node, str
 	/*
 	 * Initialize the ranges so that we don't have to worry about
 	 * having them all defined in the FDT. In particular, it is
-	 * perfectly fine not to want I/O space on PCI busses.
+	 * perfectly fine not to want I/O space on PCI buses.
 	 */
 	bzero(io_space, sizeof(*io_space));
 	bzero(mem_space, sizeof(*mem_space));

Modified: projects/clang400-import/sys/boot/efi/loader/main.c
==============================================================================
--- projects/clang400-import/sys/boot/efi/loader/main.c	Mon Jan 16 19:53:18 2017	(r312308)
+++ projects/clang400-import/sys/boot/efi/loader/main.c	Mon Jan 16 19:56:27 2017	(r312309)
@@ -219,20 +219,19 @@ find_currdev(EFI_LOADED_IMAGE *img, stru
 		if (h == NULL)
 			break;
 
-		if (efi_handle_lookup(h, dev, unit, extra) == 0) {
-			if (copy != NULL)
-				free(copy);
+		free(copy);
+		copy = NULL;
+
+		if (efi_handle_lookup(h, dev, unit, extra) == 0)
 			return (0);
-		}
 
-		if (copy != NULL)
-			free(copy);
 		devpath = efi_lookup_devpath(h);
 		if (devpath != NULL) {
 			copy = efi_devpath_trim(devpath);
 			devpath = copy;
 		}
 	}
+	free(copy);
 
 	/* Try to fallback on first device */
 	if (devsw[0] != NULL) {

Modified: projects/clang400-import/sys/cam/cam_compat.h
==============================================================================
--- projects/clang400-import/sys/cam/cam_compat.h	Mon Jan 16 19:53:18 2017	(r312308)
+++ projects/clang400-import/sys/cam/cam_compat.h	Mon Jan 16 19:56:27 2017	(r312309)
@@ -31,7 +31,7 @@
 #ifndef _CAM_CAM_COMPAT_H
 #define _CAM_CAM_COMPAT_H
 
-/* No user-servicable parts in here. */
+/* No user-serviceable parts in here. */
 #ifdef _KERNEL
 
 int cam_compat_ioctl(struct cdev *dev, u_long cmd, caddr_t addr, int flag,

Modified: projects/clang400-import/sys/cam/cam_iosched.h
==============================================================================
--- projects/clang400-import/sys/cam/cam_iosched.h	Mon Jan 16 19:53:18 2017	(r312308)
+++ projects/clang400-import/sys/cam/cam_iosched.h	Mon Jan 16 19:56:27 2017	(r312309)
@@ -31,7 +31,7 @@
 #ifndef _CAM_CAM_IOSCHED_H
 #define _CAM_CAM_IOSCHED_H
 
-/* No user-servicable parts in here. */
+/* No user-serviceable parts in here. */
 #ifdef _KERNEL
 
 /* Forward declare all structs to keep interface thin */

Modified: projects/clang400-import/sys/cam/cam_xpt.c
==============================================================================
--- projects/clang400-import/sys/cam/cam_xpt.c	Mon Jan 16 19:53:18 2017	(r312308)
+++ projects/clang400-import/sys/cam/cam_xpt.c	Mon Jan 16 19:56:27 2017	(r312309)
@@ -106,7 +106,12 @@ struct xpt_softc {
 	int buses_to_config;
 	int buses_config_done;
 
-	/* Registered busses */
+	/*
+	 * Registered buses
+	 *
+	 * N.B., "busses" is an archaic spelling of "buses".  In new code
+	 * "buses" is preferred.
+	 */
 	TAILQ_HEAD(,cam_eb)	xpt_busses;
 	u_int			bus_generation;
 
@@ -892,7 +897,7 @@ xpt_init(void *dummy)
 	/*
 	 * The xpt layer is, itself, the equivalent of a SIM.
 	 * Allow 16 ccbs in the ccb pool for it.  This should
-	 * give decent parallelism when we probe busses and
+	 * give decent parallelism when we probe buses and
 	 * perform other XPT functions.
 	 */
 	devq = cam_simq_alloc(16);
@@ -1627,7 +1632,7 @@ xptedtbusfunc(struct cam_eb *bus, void *
 	}
 
 	/*
-	 * If the user is only interested in busses, there's no
+	 * If the user is only interested in buses, there's no
 	 * reason to descend to the next level in the tree.

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



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