freebsd-skq/sys/cddl
Alexander Motin cf2f2eb568 Fix infinite scan on a pool with only special allocations
Attempt to run scrub or resilver on a new pool containing only special
allocations (special vdev added on creation) caused infinite loop
because of dsl_scan_should_clear() limiting memory usage to 5% of pool
size, which it calculated accounting only normal allocation class.

Addition of special and just in case dedup classes fixes the issue.

Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: Alexander Motin <mav@FreeBSD.org>
Sponsored-By: iXsystems, Inc.
Closes #10106
Closes #8694
openzfs/zfs@fa130e010c
2020-03-16 19:03:10 +00:00
..
boot/zfs loader: replace zfs_alloc/zfs_free with malloc/free 2020-02-26 18:12:12 +00:00
compat/opensolaris TODO DONE: Use sx_xholder in SPL rwlock.h 2020-03-14 00:16:15 +00:00
contrib/opensolaris Fix infinite scan on a pool with only special allocations 2020-03-16 19:03:10 +00:00
dev Clear systrace_args_func when systrace probes are disabled. 2020-02-28 17:04:36 +00:00