mirror of
https://git.proxmox.com/git/mirror_zfs.git
synced 2026-05-22 18:40:43 +03:00
Report MMP_STATE_NO_HOSTID immediately
There is no need to perform the activity check before detecting that the user must set the system hostid, because the pool's multihost property is on, but spa_get_hostid() returned 0. The initial call to vdev_uberblock_load() provided the information required. Reviewed-by: Giuseppe Di Natale <dinatale2@llnl.gov> Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> Signed-off-by: Olaf Faaland <faaland1@llnl.gov> Closes #6388
This commit is contained in:
committed by
Brian Behlendorf
parent
0582e40322
commit
e889f0f520
+6
-6
@@ -2653,12 +2653,6 @@ spa_load_impl(spa_t *spa, uint64_t pool_guid, nvlist_t *config,
|
||||
*/
|
||||
activity_check = spa_activity_check_required(spa, ub, config);
|
||||
if (activity_check) {
|
||||
error = spa_activity_check(spa, ub, config);
|
||||
if (error) {
|
||||
nvlist_free(label);
|
||||
return (error);
|
||||
}
|
||||
|
||||
if (ub->ub_mmp_magic == MMP_MAGIC && ub->ub_mmp_delay &&
|
||||
spa_get_hostid() == 0) {
|
||||
nvlist_free(label);
|
||||
@@ -2667,6 +2661,12 @@ spa_load_impl(spa_t *spa, uint64_t pool_guid, nvlist_t *config,
|
||||
return (spa_vdev_err(rvd, VDEV_AUX_ACTIVE, EREMOTEIO));
|
||||
}
|
||||
|
||||
error = spa_activity_check(spa, ub, config);
|
||||
if (error) {
|
||||
nvlist_free(label);
|
||||
return (error);
|
||||
}
|
||||
|
||||
fnvlist_add_uint64(spa->spa_load_info,
|
||||
ZPOOL_CONFIG_MMP_STATE, MMP_STATE_INACTIVE);
|
||||
fnvlist_add_uint64(spa->spa_load_info,
|
||||
|
||||
Reference in New Issue
Block a user