mirror_zfs/tests/zfs-tests/tests/functional/removal
George Wilson d7cf06a25d
nopwrites on dmu_sync-ed blocks can result in a panic
After a device has been removed, any nopwrites for blocks on that
indirect vdev should be ignored and a new block should be allocated. The
original code attempted to handle this but used the wrong block pointer
when checking for indirect vdevs and failed to check all DVAs.

This change corrects both of these issues and modifies the test case
to ensure that it properly tests nopwrites with device removal.

Reviewed-by: Prakash Surya <prakash.surya@delphix.com>
Reviewed-by: Matthew Ahrens <mahrens@delphix.com>
Reviewed-by: Richard Yao <richard.yao@alumni.stonybrook.edu>
Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov>
Signed-off-by: George Wilson <gwilson@delphix.com>
Closes #14235
2022-12-02 17:45:33 -08:00
..
cleanup.ksh OpenZFS 7614, 9064 - zfs device evacuation/removal 2018-04-14 12:16:17 -07:00
removal_all_vdev.ksh OpenZFS 7614, 9064 - zfs device evacuation/removal 2018-04-14 12:16:17 -07:00
removal_cancel.ksh ZTS: Misc fixes for FreeBSD 2020-02-27 09:38:34 -08:00
removal_check_space.ksh OpenZFS 7614, 9064 - zfs device evacuation/removal 2018-04-14 12:16:17 -07:00
removal_condense_export.ksh ZTS: fix removal_condense_export test case 2021-04-11 21:49:13 -07:00
removal_multiple_indirection.ksh ZTS: Catalog tunable names for tests in tunables.cfg 2020-01-14 14:57:28 -08:00
removal_nopwrite.ksh nopwrites on dmu_sync-ed blocks can result in a panic 2022-12-02 17:45:33 -08:00
removal_remap_deadlists.ksh Update ZTS to work on FreeBSD 2019-12-18 12:29:43 -08:00
removal_reservation.ksh OpenZFS 9166 - zfs storage pool checkpoint 2018-06-26 10:07:42 -07:00
removal_resume_export.ksh ZTS: Another round of changes for FreeBSD 2020-03-06 09:31:32 -08:00
removal_sanity.ksh ZTS: change $(cat) to $(<) for speedup 2018-10-31 12:00:06 -05:00
removal_with_add.ksh OpenZFS 9166 - zfs storage pool checkpoint 2018-06-26 10:07:42 -07:00
removal_with_create_fs.ksh OpenZFS 9166 - zfs storage pool checkpoint 2018-06-26 10:07:42 -07:00
removal_with_dedup.ksh ZTS: change $(cat) to $(<) for speedup 2018-10-31 12:00:06 -05:00
removal_with_errors.ksh Default to ON for compression 2022-03-03 10:43:38 -08:00
removal_with_export.ksh Default to ON for compression 2022-03-03 10:43:38 -08:00
removal_with_faulted.ksh Detect IO errors during device removal 2018-12-04 09:37:37 -08:00
removal_with_ganging.ksh ZTS: Catalog tunable names for tests in tunables.cfg 2020-01-14 14:57:28 -08:00
removal_with_indirect.ksh zpool: fix redundancy check after vdev removal 2022-08-04 17:02:57 -07:00
removal_with_remove.ksh OpenZFS 9166 - zfs storage pool checkpoint 2018-06-26 10:07:42 -07:00
removal_with_scrub.ksh OpenZFS 9166 - zfs storage pool checkpoint 2018-06-26 10:07:42 -07:00
removal_with_send_recv.ksh OpenZFS 9166 - zfs storage pool checkpoint 2018-06-26 10:07:42 -07:00
removal_with_send.ksh ZTS: /dev/null: accept no substitutes 2022-03-08 09:33:11 -08:00
removal_with_snapshot.ksh OpenZFS 9166 - zfs storage pool checkpoint 2018-06-26 10:07:42 -07:00
removal_with_write.ksh OpenZFS 7614, 9064 - zfs device evacuation/removal 2018-04-14 12:16:17 -07:00
removal_with_zdb.ksh OpenZFS 9166 - zfs storage pool checkpoint 2018-06-26 10:07:42 -07:00
removal.kshlib tests: remove unused functions 2022-04-01 18:03:05 -07:00
remove_attach_mirror.ksh tests: don't fail if no fio or python3.sysctl 2022-04-01 17:55:45 -07:00
remove_expanded.ksh ZTS: normalize on use of sync_pool and sync_all_pools 2022-01-06 10:57:09 -08:00
remove_indirect.ksh Device removal of indirect vdev panics the kernel 2019-09-16 10:46:59 -07:00
remove_mirror_sanity.ksh tests: review every awk(1) invocation 2022-04-01 17:57:55 -07:00
remove_mirror.ksh zpool: fix redundancy check after vdev removal 2022-08-04 17:02:57 -07:00
remove_raidz.ksh OpenZFS 7614, 9064 - zfs device evacuation/removal 2018-04-14 12:16:17 -07:00