Fix typo.

Submitted by:	Dmitry Morozovsky <marck rinet ru>
MFC after:	3 days

(cherry picked from commit ebf4cb37730ee5d005f7e1929036d19ffc0a7e3a)
MFV r271225:

Iterate through all the children instead of returning error when we hit
the first error.  This makes the error message give more information
rather than just the first device that causes problem.

Illumos issue:
    5118 When verifying or creating a storage pool, error messages only
	 show one device

MFC after:	2 weeks

(cherry picked from commit 3cb2e6de7466d95fa66bded91cb1f52f4f0bcada)
MFV r271510:

Enforce 4K as smallest indirect block size (previously the smallest
indirect block size was 1K but that was never used).

This makes some space estimates more accurate and uses less memory
for some data structures.

Illumos issue:
    5141 zfs minimum indirect block size is 4K

MFC after:	2 weeks

(cherry picked from commit bd509415bb1b2407deb80099b6f299dd1d741758)
MFV r271511:

Use fnvlist_* to make code more readable.

Illumos issue:
    5135 zpool_find_import_cached() can use fnvlist_*

MFC after:	2 weeks

(cherry picked from commit a0dafe3a3cb5713720456aea2ab6c5445a26d208)
MFV r271512:

Illumos issue:
    5136 fix write throttle comment in dsl_pool.c

MFC after:	2 weeks

(cherry picked from commit 49c2133129d4b63f127be7380cbb9e641e0a74d5)
MFV r271515:

Add a new tunable/sysctl, vfs.zfs.free_max_blocks, which can be used to
limit how many blocks can be free'ed before a new transaction group is
created.  The default is no limit (infinite), but we should probably have
a lower default, e.g. 100,000.

With this limit, we can guard against the case where ZFS could run out of
memory when destroying large numbers of blocks in a single transaction
group, as the entire DDT needs to be brought into memory.

Illumos issue:
    5138 add tunable for maximum number of blocks freed in one txg

MFC after:	2 weeks

(cherry picked from commit 3a202e2324f1044b4475f6e0fa21e72569f9cdfe)
MFV r271516:

Enable debug printf's when ZFS_DEBUG or debug= is set.

Illumos issue:

    5134 if ZFS_DEBUG or debug= is set, libzpool should enable debug prints

MFC after:	2 weeks

(cherry picked from commit b157123631b928ffeb6fd3a56c3aed0ef7b09cef)
MFV r271517:

In zil_claim, don't issue warning if we get EBUSY (inconsistent) when
opening an objset, instead, ignore it silently.

Illumos issue:

    5140 message about "%recv could not be opened" is printed when booting after crash

MFC after:	1 week

(cherry picked from commit 9cdf61a6da9c49a596f561cb9c6c9b423c0dc512)
MFV r271518:

Correctly report hole at end of file.

When asked to find a hole, the DMU sees that there are no holes in the
object, and returns ESRCH.  The ZPL interprets this as "no holes before
the end of the file", and therefore inserts the "virtual hole" at the
end of the file.  Because DMU and ZPL have different ideas of where the
end of an object/file is, we will end up returning the end of file,
which is generally larger, instead of returning the end of object.

The fix is to handle the "virtual hole" in the DMU. If no hole is found,
the DMU will return a hole at the end of the file, rather than an error.

Illumos issue:
    5139 SEEK_HOLE failed to report a hole at end of file

MFC after:	1 week

(cherry picked from commit 387d8afb949bd038dccab51de41a1a0bf9cdfa59)