Multiple fixes to the zfsd test suite
- Wait for gnop devices to disappear after "gnop destroy".
Apparently that process is asynchronous now, or maybe it's just slower than it used to be. Also, after removing a gnop wait for its pool to be degraded. That isn't instant.
- The zfsd tests no longer require camcontrol.
This was a harmless oversight from 11ed0a95bfa76791dc6428eb2d47a986c0c6f8a3
- Fix the zfsd_degrade_001_pos test for recent zfs versions.
ZFS now rate limits checksum errors to about 20 per second. But zfsd's threshold for degrading a disk is 50 per minute. So we must alternately corrupt and scrub the pool to ensure that checksum errors are generated in multiple 1-second windows, so that zfsd will see enough of them.
- Fix the zfsd_fault_001_pos test in VMs
And, for that matter, when using NVME or SATA disks. As originally written, the test used the da driver to inject errors. Rewrite it to use gnop vdevs. gnop can also inject errors. It works on top of any disk device, and it's also faster than using da.
Sponsored by: Axcient
Differential Revision: https://reviews.freebsd.org/D39437
(cherry picked from commit dba2e89ea7a13469ee2e47a2a1d627ca28bb94c2)