MFC r269206, r269207, r269208, r269209, r269210, r269211, r269212, r269213,
    r269214, r269215, r269216, r269217, r269221:

  busdma-v6 improvements, primarily:
  - Allocate the temporary segments array per-map rather than per-tag.
  - Avoid needlessly bouncing IO for mbufs and buffers allocated by
    bus_dmamem_alloc() (in both situations we known they're allocated
    on cacheline boundaries and don't need bouncing).
  - Various minor reformatting and cleanups.
MFC r269341: Populate disk->d_ident with the sd or mmc card's serial number.
MFC r269390: Fix unwind info in hand-written asm (avoid nested functions).
MFC r269393, r269394, r269395:

  Fix parsing of arch extensions in binutils/gas.
  Use ".arch_extension sec" when compiling ARM TI code that uses the
  security extensions.
MFC r269403, r269405, r269410, r269414:

  Add 64-bit atomic ops for armv6, and also for armv4 only in kernel code.
  Use the new ops in the cddl code (and avoid defining functions with the
  same names locally).
MFC r269180:

When interval is set to very small value with limited amount of packets,
ping6(8) would quit before the remote side gets a chance to respond.

Solve this by resetting the itimer when we have reached the maximum packet
number have reached, but let the other handling to continue.

PR:		bin/151023
Submitted by:	tjmao at tjmao.net
MFC r269522

Added support for extra ifconfig args to jail ip4.addr & ip6.addr params

This allows for CARP interfaces to be  used in jails e.g.
ip4.addr = "em0|10.10.1.20/32 vhid 1 pass MyPass advskew 100"

r269340 will not be MFC'ed as mentioned due to the slim window and the
amount of additional commits required to support it.

Sponsored by:	Multiplay
MFC: Merge in the changes in -current:

Support ! operator in "files" files.
Improve error detection and reporting
Cleanup code to make it easier to maintain.
Remove mandatory keyword: it has been used for 17 years.
Bump version number (we should have bumped for -I too, but didn't)

	r261501 | imp | 2014-02-04 17:26:11 -0700 (Tue, 04 Feb 2014) | 5 lines
	Fix ! by not clearing not at the bottom of the loop.
	Add a blank line
	Submitted by:   bde (blank line)

	r261493 | imp | 2014-02-04 11:28:58 -0700 (Tue, 04 Feb 2014) | 5 lines
	Implement the '!' operator for files* files. It means 'include this
	only if the specified option is NOT specified.' Bump version because
	old config won't be able to cope with files* files that have this
	construct in them.

	r261446 | imp | 2014-02-03 12:14:36 -0700 (Mon, 03 Feb 2014) | 5 lines
	Convert the loop by gotos into a for loop to improve readability. I
	did this only with the inner loop for the token parsing, and not the
	outer loop which was understandable enough when the extra layers of
	looping went away...

	r261445 | imp | 2014-02-03 12:10:33 -0700 (Mon, 03 Feb 2014) | 4 lines
	Fix a bug introduced in r261437 that failed to honor "optional
	profiling-routine" to work, since profiling-routine is not really an
	option or a device, but a special case elsewhere in the code.

	r261444 | imp | 2014-02-03 11:56:41 -0700 (Mon, 03 Feb 2014) | 2 lines
	Slight cleanup to the error messaging to compress code vertically...

	r261442 | imp | 2014-02-03 11:31:51 -0700 (Mon, 03 Feb 2014) | 2 lines
	Better error messages when EOF is hit in the middle of a phrase.

	r261438 | imp | 2014-02-03 09:54:53 -0700 (Mon, 03 Feb 2014) | 5 lines
	Move the check for standard keyword + optional inclusion specifier to
	its proper location. Otherwise you could have 'file.c standard pci'
	without an error. This construct isn't in our tree, and has no well
	defined meaning.

	r261437 | imp | 2014-02-03 09:47:10 -0700 (Mon, 03 Feb 2014) | 4 lines
	Don't believe we have a requirement until after we've checked all the
	known key words. This will make error messages slightly better in
	weird corner cases, but should otherwise be a nop.

	r261436 | imp | 2014-02-03 09:46:01 -0700 (Mon, 03 Feb 2014) | 3 lines
	In the 17 years since r30796, the mandatory keyword has never been used
	in any files as far as I can tell, and is currently unused. Retire it.

	r261435 | imp | 2014-02-03 08:10:44 -0700 (Mon, 03 Feb 2014) | 6 lines
	Slightly deobfuscate read_file() and likely pessimize the runtime
	performance by epsilon.
	(Translation: elminate bogus macros that hid 'returns' making it hard
	 to read and moved a block of code inline rather than at the end of the
	 fuction where it was effectively a 'gosub' kind of goto).
MFC r269740:

Pull in r214736 from upstream libc++ trunk (by Marshall Clow):

  Fix PR#20520 - predicate called too many times in list::remove_if.
  Add tests for list, forward_list, and the std::remove_if algorithm

This fixes an issue where std::list<>::remove_if() and remove() could
erroneously visit elements twice.

Reported by:	Dominic Fandrey <kamikaze@bsdforen.de>
PR:		192303
MFC r269302:

  Fix relative numerical addressing (addr,+N).

  As a bonus the patch untangles a bit the logic and makes the code
  easier to grasp.

  PR:           192108
MFC r269229,269404,269466: MFV r269223:

Change dn->dn_dbufs from linked list to AVL tree.

Illumos issues:
  4873 zvol unmap calls can take a very long time for larger datasets
MFC r269230: MFV r269224:

Increase default ARC buf_hash_table size.  When typical block size is small,
the hash table could be too small, which would lead to long hash chains and
limit performance for cached reads.

A new loader tunable, vfs.zfs.arc_average_blocksize, have been added which
allows users to override the default assumption of average (typical) block
size.  Old default was 65536 (64 KiB) and new default is 8192 (8 KiB).

Illumos issue:
    5034 ARC's buf_hash_table is too small
MFC r266728,266731,266735,266736,268135,268960,269833
 Update apr 1.4.8 -> 1.5.1
 Update apr-util 1.5.2 -> 1.5.3
 Update serf 1.3.4 -> 1.3.7
 Update svnlite 1.8.8 -> 1.8.10
 Deal with svnlite.1 manpage.
MFC r268314:
Fix some compile warnings.

Sponsored by:	Mellanox Technologies
MFC r268315:
Fix compile warning.

Sponsored by:	Mellanox Technologies
MFC r268316:
Fix OFED startup order: All SYSINIT()'s and modules should be loaded
prior to starting "/sbin/init" which will run all the "/etc/rc.d/xxx"
scripts. Else there can be a race configuring the interfaces via
"/etc/rc.conf".

Sponsored by:	Mellanox Technologies
MFC r257594:
Add description of two EHCI PCI IDs.
MFC cleanup of libusb20 example

r257779 by hselasky:

  - Use libusb20_strerror() function instead of custom usb_error() one.
  - Rename "aux.[ch]" to "util.[ch]" which is a more common name for
  utility functions and allows checkout on some non-FreeBSD systems
  where the "aux.*" namespace is reserved.
  - Fix some compile warnings while at it.

r257796 by glebius:

  Finish r257779.

PR:		183728
MFC r269750:

In r268463, I misplaced a return in demangle(), causing the function to
erroneously skip symbols that were not mangled at all.  Fix this by
moving the return into the preceding if block.

While here, simplify the code by letting __cxa_demangle() allocate the
needed space for the demangled symbol.  This also fixes a memory leak,
which would occur whenever __cxa_demangle() failed.

Reported by:	pgj
PR:		base/191981
MFC 269745: Create a redundant grain directory and table.