mirror of
https://git.proxmox.com/git/mirror_zfs.git
synced 2026-05-22 10:37:35 +03:00
Fix ztest deadman panic with indirect vdev damage
This patch fixes an issue where ztest's deadman thread would trigger a panic because reconstructing artifically damaged blocks would take too long to reconstruct. This patch simply limits how often ztest inflicts split-block damage and how many segments it can damage when it does. Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> Reviewed-by: Serapheim Dimitropoulos <serapheim.dimitro@delphix.com> Reviewed-by: Matthew Ahrens <mahrens@delphix.com> Signed-off-by: Tom Caputi <tcaputi@datto.com> Closes #8010
This commit is contained in:
committed by
Brian Behlendorf
parent
5e0bd0ae05
commit
4a7eb69a5a
+6
-1
@@ -7383,8 +7383,13 @@ main(int argc, char **argv)
|
||||
* Verify that even extensively damaged split blocks with many
|
||||
* segments can be reconstructed in a reasonable amount of time
|
||||
* when reconstruction is known to be possible.
|
||||
*
|
||||
* Note: the lower this value is, the more damage we inflict, and
|
||||
* the more time ztest spends in recovering that damage. We chose
|
||||
* to induce damage 1/100th of the time so recovery is tested but
|
||||
* not so frequently that ztest doesn't get to test other code paths.
|
||||
*/
|
||||
zfs_reconstruct_indirect_damage_fraction = 4;
|
||||
zfs_reconstruct_indirect_damage_fraction = 100;
|
||||
|
||||
action.sa_handler = sig_handler;
|
||||
sigemptyset(&action.sa_mask);
|
||||
|
||||
Reference in New Issue
Block a user