Port of ZoL Pool Allocation Classes feature

Review Request #1662 - Created April 5, 2019 and submitted

Jerry Jelinek

This is a port of the ZoL Pool Allocation classes feature, along with related fixes used by the new test cases. The following ZoL commits are included:
441709695 Pool allocation classes misplacing small file blocks
00369f333 ZTS: fix "not found" errors (partial)
0c0b0ad48 Fix racy assignment of zcb.zcb_haderrors
fea33e4e5 Pass status_cbdata_t to print_status_config() and friends
a77f29f93 Change full path subcommand flag from -p to -P
d2f3e292d Add -gLp to zpool subcommands for alt vdev names
6eb6073a0 Allow add of raidz and mirror with same redundancy
6ba1ce9ee Accept raidz and mirror with similar redundancy
cc99f275a Pool allocation classes

The primary modifications needed for illumos are in the test cases 3, 4, 5 7, 8, 9 and 12 to make them work on illumos since the ZoL test code depends on other features we don't yet have in illumos.

zfs-test run, including the new and modified tests, which pass.

Igor Kozhukhov
Kody Kantor
Jerry Jelinek
Review request changed

Status: Closed (submitted)