MFC 249066:
Check for SS_NBIO in the socket state field rather than socket buffer
flags.
MFC r250792:
Added output of device QUIRKS for CAM and AHCI devices during boot.
MFC r251061:
More 4k quirks for SSD's
MFC: r251079
Post-r248567, there were times when the client would return a
truncated directory for some NFS servers. This turned out to
be because the size of a directory reported by an NFS server
can be smaller that the ufs-like directory created from the
RPC XDR in the client. This patch fixes the problem by changing
r248567 so that vnode_pager_setsize() is only done for regular files.
MFC r247426:
Add hw.mfi.cmd_timeout loader / sysctl tuneable.
MFC r250206:
Fix uninitialized warning in mps
MFC r248579:
Add missing descriptions for ZFS sysctls
MFC r245479:
Report pools which have a removed l2cache disk under zpool status -x
MFC r244194:
Fix zfs receive errors caused by snapshot replication being processed in
random order.

PR:		kern/172259
MFC r245250:
Allow perl scripts to be used in rc.d scripts

PR:		conf/117027
Added ZFS TRIM support which is enabled by default. To disable
ZFS TRIM support set vfs.zfs.trim.enabled=0 in loader.conf.

Creating new ZFS pools and adding new devices to existing pools
first performs a full device level TRIM which can take a significant
amount of time. The sysctl vfs.zfs.vdev.trim_on_init can be set to 0
to disable this behaviour.

ZFS TRIM requires the underlying device support BIO_DELETE which
is currently provided by methods such as ATA TRIM and SCSI UNMAP
via CAM, which are typically supported by SSD's.

Stats for ZFS TRIM can be monitored by looking at the sysctl's
under kstat.zfs.misc.zio_trim.

MFC r240868: Add TRIM support
MFC r244155: Renamed zfs trim stats
MFC r244187: Upgrade TRIM free request sizes optimisation
MFC r244188: Added vfs.zfs.vdev.trim_on_init sysctl
MFC r248572: Add TRIM support for L2ARC
MFC r248574: Improve TXG handling in the TRIM module
MFC r248575: TRIM cache devices based on time instead of TXGs
MFC r248576: Names the ZFS TRIM thread
MFC r248577: Optimisation of TRIM processing
MFC r248602: Fix for building libzpool under i386
MFC r249921: Enabled ZFS TRIM by default
MFC r250286:
Some fixes to snd_envy24ht(4) driver:
 - Allow DMA addresses anywhere in the lower 4GB; Envy24HT has a 32-bit DMA
engine, not 28-bit like Envy24.
 - Mark interrupt handler as MPSAFE, seems to be correctly synchronized.

PR:		kern/152378
Submitted by:	Jason Harmening <jason.harmening@gmail.com>
MFC	r251336, r251344, r251346:

ext2fs: update Block Group Descriptor struct plus cosmetic fixes.
MFC r251318:
Remove irrelevant comments.
MFH (r247863): fix occasional SIGSEGV when an interface was added.
MFC r249115:
Adds security command to camcontrol which provides the ability to secure erase
SSD's

MFC r249153: (included in r251494)
mdoc: remove superfluous paragraph macro.
MFC r249895:
Add Host Protected Area (HPA) support to camcontrol

MFC r249904:
mdoc: remove superfluous paragraph macro.
MFC: r251368, r251382: Match the options of the kernel.
MFC r235647 for newsyslog (by gleb):
Hide DIR definition by making it an opaque struct typedef.

Introduce dirfd() libc exported symbol replacing macro with same name,
preserve _dirfd() macro for internal use.

Replace dirp->dd_fd with dirfd() call. Avoid using dirfd as variable
name to prevent shadowing global symbol.

MFC r250545:
Some filesystems (NFS in particular) do not fill out the d_type field when
returning directory entries through readdir(3). In this case we need to
obtain the file type ourselves; otherwise newsyslog -t will not be able to
find archived log files and will fail to both delete old log files and to
do interval-based rotations properly.

MFC r251240:
We want to stat the archived log file rather than the logfile itself.
MFC r250941:
Include descriptions of the flags and fields printed when dumping the IPv6
prefix list.