MFC r271308:
Make ZVOL writes in device mode support IO_SYNC flag.
MFC r271309:
Improve cache control support, including DPO/FUA flags and the mode page.

At this moment it works only for files and ZVOLs in device mode since BIOs
have no respective respective cache control flags (DPO/FUA).
MFC r271311:
Add support for Mode Page Policy (0x87) VPD page.
MFC r271316: Report that DPO and FUA bits are supported after r271311.
MFC r271352: Fix minor buffer overflow reported by Coverity.
MFC r271353: Fix memory leak on error, reported by Coverity.
MFC r271354: Fix couple off-by-one range check errors, reported by Coverity.
MFC r271358: Fix array overrun, reported by Coverity.
MFC r271360: Remove uninitialized and unused variable, reported by Coverity.
MFC r271313: Oops, missed piece of r271311.
MFC r271443: Add support for Extended INQUIRY Data (0x86) VPD page.
MFC r271503: Implement range checks between UNMAP and READ/WRITE commands.

Before this change UNMAP completely blocked other I/Os while running.
Now it blocks only colliding ones, slowing down others only due to ZFS
locks collisions.

Sponsored by:	iXsystems, Inc.
MFC r272263:

Checksum coverage values larger than 65535 for UDPLite are invalid.
Check for this when the user calls setsockopt using UDPLITE_{SEND,RECV}CSCOV.
MFC r272296:
When plen != ulen, it should only be checked when this is UDP.

The commit is from kevlo and he agreed that I MFC it as part of the
UDPLite fixes.
MFC r271505:
Add "readcache" and "writecache" LUN options to control default behavior.

Default values are "on".  Disabling requires backend to support IO_DIRECT
and IO_SYNC flags respectively, or some alternatives.
MFC r271507:
Implement control over command reordering via options and control mode page.

It allows to bypass range checks between UNMAP and READ/WRITE commands,
which may introduce additional delays while waiting for UNMAP parameters.
READ and WRITE commands are always processed in safe order since their
range checks are almost free.
MFC r271606:
Always report that we support REPORT TARGET PORT GROUPS command.

Without clustering support we any way have only one group of permanently
active ports, but that gives us one more supported VMWare feature. ;)

Solaris' Comstar also reports it even when only one port is present.
MFC r271839:
Add support for "no Data-Out Buffer" (NDOB) flag of WRITE SAME (16) command.
MFC r271845:
Allow more commands to pass persistent reservation according to SPC-4 r37.
MFC r271869:
Fix inverted expression to report block size in mode page block descriptor.