MRC: r260886

Merge only the uart_dev_at91usart.c part of this revision,
since it has nothing to do with the commit log and was included
by mistake there.

This connects the new grab/ungrab upcalls that were revised
in uart to fix mountroot>.
MFC r257650:

Defer loading of kernel and modules if the beastie menu is enabled. Add a
kernel selection menu to the beastie menu. List of kernels is taken from
`kernels' in loader.conf(5) as a space (or comma) separated list of names
to display (up to 9). If not set, default value is "kernel kernel.old".
Does not validate that kernels exist because the next enhancement will be
to allow selection of the root device.

Discussed on:	-current
MFC r257821:

Extend loader_delay as-documented in beastie.4th(8) and delay.4th(8),
making it available to architectures that do not use or load the beastie
menu. This is reported to save headaches on some PPC systems where unload
followed by load does not produce the desired results wherein if-given
the opportunity to abort the initial loading sequence, you can customize
the first load.

Reviewed by:	nwhitehorn, kan
Discussed on:	-current
MFC r258269: Refactor draw-beastie function.

Discussed on:	-hackers
MFC r258270:

Add a try-include word (which acts the same as "include") and use it to
conditionally include (but ignore failures) /boot/loader.rc.local and
/boot/menu.rc.local -- to make customizing the menu easier.

Reviewed by:	alfred
Discussed on:	-hackers
MFR r261294:

Remove an unneeded space in the BERI merge.

Sponsored by:	DARPA, AFRL
MFC r261499 (pjd):

Fix installations that use kernels without CAPABILITIES support.
(not quite, due to date difference) MFC r262719:

Document the fact that OpenSSH default configuration requires Capsicum
capability mode support in kernel, which have been worked around later
but it's still recommended to have it enabled.

Reported by:	many
MFC	r262623, r262667:

ext2fs: use of tab vs spaces.

Consistently use a single tab after a #define as mentioned in style(9).
Use tabs instead of space for indenting.
Fix a typo: "hash_vesion".

No functional change.
MFC r262441-262442,262447,262461-262464,262655:

- Consistently pass around context information using a simple pointer.
  This fixes some dereferencing bugs in Chinese character set conversions.
- Fix Simplified Chinese character set conversions by switching around the
  fields of an internal struct so it corresponds with the way variables of
  this type are initialised.
- Fix an array index out of bounds bug in iconv VIQR (Vietnamese) module.
- Silence gcc warning about unsigned comparison with 0.

Also record r258316 and r258587 as merged so they no longer show up as
eligible.

PR:		185964
Submitted by:	Manuel Mausz <manuel-freebsd@mausz.at>
Merge r261590, r261592 from head:
  Remove identical vnet sysctl handlers, and handle CTLFLAG_VNET
  in the sysctl_root().

  Note: SYSCTL_VNET_* macros can be removed as well. All is
    needed to virtualize a sysctl oid is set CTLFLAG_VNET on it.
    But for now keep macros in place to avoid large code churn.
Merge r261590: Fixup for r261590 (vnet sysctl handlers cleanup)
Merge 261593 from head:
  Provide macros that allow easily export uma(9) zone limits and
  current usage via sysctl(9).
Merge 261595: simplify the SYSCTL_COUNTER_U64() macro.
Merge r261722, r261723, r261724, r261725 from head:
  several minor improvements for UMA_ZPCPU_ZONE zones.
Merge r261796 from head:
  While it isn't too late and kvm_read_zpcpu() function isn't yet used
  outside libkvm(3), change its order of arguments, so that it is the
  same as in kvm_read().
Merge r261805 from head:
  Add kvm_getncpus() to obtain mp_ncpus.
Merge r261582, r261601, r261610, r261613, r261627, r261640, r261641, r261823,
      r261825, r261859, r261875, r261883, r261911, r262027, r262028, r262029,
      r262030, r262162 from head.

  Large flowtable revamp. See commit messages for merged revisions for
  details.

Sponsored by:	Netflix
MFC rXXXXXX: Initialize m_pkthdr via bzero instead of zeroing each field

Sponsored by:	The FreeBSD Foundation
Remove or rename mbuf fields lacking in-tree consumers or design doc

These fields were part of the broader project to clarify ownership of
parts of the mbuf throughout the stack and explore changes to the driver
and stack interface, and packet handoff.

Unfortunately these arrived in HEAD prior to the branchpoint for 10.0,
without examples of in-tree consumers or design documentation.  Further
changes to the model may arrive in HEAD after testing and review in a
project branch.

Thus, in 10 remove or mark them as reserved, while preserving the KBI,
to avoid specifying a kernel interface that does not yet exist.