MFC r244983 (by jfv):
Add Intel Lynx Point PCH SATA Controller Device IDs
MFC r236242:
Add quirk for Marvell based AHCI controller.
MFC r238379, r238382 (by bruefer):
Renamed the kern.cam.da.da_send_ordered sysctl and tunable to
kern.cam.da.send_ordered, more in line with the other da sysctls/tunables.
Renamed the kern.cam.ada.ada_send_ordered sysctl and tunable to
kern.cam.ada.send_ordered, more in line with the other da sysctls/tunables.

PR:             169765
MFC r239175:
Add missing FAILED event to g_raid_subdisk_event2str() to print it properly
in debug messages.
MFC r241418:
NULL-ify last previously used pointer instead of last possible pointer.
This should be only a cosmetic change.
MFC r244980 (by jvf):
Add Intel Lynx Point PCH HD Audio Device IDs
MFC r226064 (by wxs):
Fix a typo in a comment.
MFC: Merge sendmail 8.14.6 errata issue
MFC r246329:

Use stripesize as smallest block size if it's available.
MFH r247014, r247050 and r247051.

Add a sample program that shows how a custom comparison function and
qsort(3) can work together to sort an array of integers.

PR:             docs/176197
Submitted by:   Fernando, fapesteguia at opensistemas.com
		Christoph Mallon, christoph.mallon at gmx.de
Approved by:    gjb (mentor), remko (mentor)
MF9 r247309:

MFC r246586,246587,246619,246624,246768,246808:

LZ4 compression support in ZFS.

(Note: sys/conf/files change omitted from this changeset).
MFC 234927:
- Don't log messages saying that accounting is being disabled and enabled
  if the accounting log file is atomically replaced with a new file
  (such as during log rotation).
- Simplify accounting log rotation a bit.  There is no need to re-run
  accton(8) after renaming the new log file to it's real name.

PR:		kern/167321
MFC 239356,239564:
Teach dhclient to track changes in link state and to enter the reboot
state when the link on an interface goes up causing dhclient to attempt
to renew its existing lease.

PR:		bin/166656
MFC 240467:
Ignore stop and continue signals sent to an exiting process.  Stop signals
set p_xstat to the signal that triggered the stop, but p_xstat is also
used to hold the exit status of an exiting process.  Without this change,
a stop signal that arrived after a process was marked P_WEXIT but before
it was marked a zombie would overwrite the exit status with the stop signal
number.
MFC 240473:
Add some registers defined in PCI 3.0 including new AER bits.
MFC r247034:
  Check if the -sec option is given without an argument.

PR:		bin/170413
Submitted by:	Andrey Simonenko <simon@comsys.ntu-kpi.kiev.ua>
MFC r246631,246651,246666,246675,246678,246688:
Merge various ZFS bugfixes

MFC r246631:
Import vendor bugfixes

Illumos ZFS issues:
  3422 zpool create/syseventd race yield non-importable pool
  3425 first write to a new zvol can fail with EFBIG

MFC r246651:
Import minor type change in refcount.h header from vendor (illumos).

MFC r246666:
Import vendor ZFS bugfix fixing a problem in arc_read().

Illumos ZFS issues:
  3498 panic in arc_read(): !refcount_is_zero(&pbuf->b_hdr->b_refcnt)

MFC r246675:
Add tunable to allow block allocation on degraded vdevs.

Illumos ZFS issues:
  3507 Tunable to allow block allocation even on degraded vdevs

MFC r246678:
Import vendor bugfixes regarding SA rounding, header size and layout.
This was already partially fixed by avg.

Illumos ZFS issues:
  3512 rounding discrepancy in sa_find_sizes()
  3513 mismatch between SA header size and layout

MFC r246688 [1]:
Merge zfs_ioctl.c code that should have been merged together with ZFS v28.
Fixes several problems if working with read-only pools.

Changed code originaly introduced in onnv-gate 13061:bda0decf867b
Contains changes up to illumos-gate 13700:4bc0783f6064

PR:		kern/175897 [1]
Suggested by:	avg [1]
MFC 240474:
- Denote PCI-e endpoints that support FLR.
- Make parsing of PCI-e extended capabilities assume that future version
  numbers are backwards compatible.
- Add new AER error descriptions.
- Add descriptions for more PCI-e extended capabilities.
MFC 240692,241228:
Adjust the ioctl workaround from r234501:
- Ensure the native ioctl path always allocates a 4kb buffer if a request
  uses a buffer size of 0.
- Rounding all small requests up to 32k swamped the controller causing
  firmware hangs.  Instead, round requests smaller than 64k up to the next
  power of 2 as a general rule.  To handle the one known special case of a
  command that accepts a 12k buffer returning a 24k-ish reply, round
  requests between 8k and 16k up to 32k rather than 16k.  The result is
  that commands less than 8k should now be rounded up to a smaller size
  (either 4k or 8k) rather than 32k.
MFC of the E1000 drivers to STABLE/8, this includes the follow revisions
plus a few tweaks:
 196969,196970,211516,214646,215781,215789,215808,215910,223350,
 223482,223831,228281,228393,229939,231796,232238,234665,235256,
 236406,238148,238151,238214,238765,238770,238953,238981,239105,
 239109,239304,240518,240693,240968,241037,241856,241885,243570,
 243857,245334,246128,246482,247064