Allow three IOCTLs to be used on suspended pool, restoring state that
existed before IOCTL code refactoring merged change 4445fffb from illumos at r248571. This change allows `zpool clear` to be used again to recover suspended pool. It seems the only was supposed by the code to restore pool operation after reconnecting lost disks that were required for data completeness. There are still cases where `zpool clear` command can just safely stuck due to deadlocks inside ZFS kernel part, but probably that is better then having no chances to recover at all.
This commit is contained in:
parent
1453595f49
commit
ec4d2e0d96
@ -5495,10 +5495,10 @@ zfs_ioctl_init(void)
|
||||
zfs_secpolicy_read, B_FALSE, POOL_CHECK_NONE);
|
||||
|
||||
zfs_ioctl_register_pool(ZFS_IOC_ERROR_LOG, zfs_ioc_error_log,
|
||||
zfs_secpolicy_inject, B_FALSE, POOL_CHECK_SUSPENDED);
|
||||
zfs_secpolicy_inject, B_FALSE, POOL_CHECK_NONE);
|
||||
zfs_ioctl_register_pool(ZFS_IOC_DSOBJ_TO_DSNAME,
|
||||
zfs_ioc_dsobj_to_dsname,
|
||||
zfs_secpolicy_diff, B_FALSE, POOL_CHECK_SUSPENDED);
|
||||
zfs_secpolicy_diff, B_FALSE, POOL_CHECK_NONE);
|
||||
zfs_ioctl_register_pool(ZFS_IOC_POOL_GET_HISTORY,
|
||||
zfs_ioc_pool_get_history,
|
||||
zfs_secpolicy_config, B_FALSE, POOL_CHECK_SUSPENDED);
|
||||
@ -5507,7 +5507,7 @@ zfs_ioctl_init(void)
|
||||
zfs_secpolicy_config, B_TRUE, POOL_CHECK_NONE);
|
||||
|
||||
zfs_ioctl_register_pool(ZFS_IOC_CLEAR, zfs_ioc_clear,
|
||||
zfs_secpolicy_config, B_TRUE, POOL_CHECK_SUSPENDED);
|
||||
zfs_secpolicy_config, B_TRUE, POOL_CHECK_NONE);
|
||||
zfs_ioctl_register_pool(ZFS_IOC_POOL_REOPEN, zfs_ioc_pool_reopen,
|
||||
zfs_secpolicy_config, B_TRUE, POOL_CHECK_SUSPENDED);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user