MFC r251047:
Avoid a nested frame for getcontext() call in check_deferred_signal().
Enhanced BIO_DELETE support for CAM SCSI to add ATA_TRIM support.

Disable CAM BIO queue sorting for non-rotating media by default.

MFC r249939 Added available delete methods discovery during device probe
MFC r249941 Automatically disable BIO queue sorting for non-rotating media
MFC r250033 Correct comment typo's
MFC r250179 Update probe flow so that devices with lbp can also disable disksort
MFC r250180 Fix probe in progress check in dareprobe
MFC r250181 Check for ATA Information VPD before querying for ATA
MFC r250183 Enable CAM SCSI to choice ATA TRIM during autodetection
MFC r250967 Enforce validation on the selected delete method via sysctl
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
Merge remote-tracking branch 'upstream/stable/9' into stable/9