]> git.proxmox.com Git - mirror_zfs.git/commit
Fix multihost stale cache file import
authorBrian Behlendorf <behlendorf1@llnl.gov>
Mon, 18 Dec 2017 18:28:27 +0000 (10:28 -0800)
committerTony Hutter <hutter2@llnl.gov>
Mon, 18 Dec 2017 18:31:01 +0000 (10:31 -0800)
commit504bfc8b49bf27a6e8900808cc3b9650460383ee
treec15179f8492224f3b0287a4487822ed63e3d0ce7
parent53a8cbd70eb2273274d26269638f0ea238943357
Fix multihost stale cache file import

When the multihost property is enabled it should be impossible to
import an active pool even using the force (-f) option.  This patch
prevents a forced import from succeeding when importing with a
stale cache file.

The root cause of the problem is that the kernel modules trusted
the hostid provided in configuration.  This is always correct when
the configuration is generated by scanning for the pool.  However,
when using an existing cache file the hostid could be stale which
would result in the activity check being skipped.

Resolve the issue by always using the hostid read from the label
configuration where the best uberblock was found.

Reviewed-by: Olaf Faaland <faaland1@llnl.gov>
Reviewed-by: Tony Hutter <hutter2@llnl.gov>
Signed-off-by: Brian Behlendorf <behlendorf1@llnl.gov>
Closes #6933
Closes #6971
module/zfs/spa.c
tests/zfs-tests/tests/functional/mmp/mmp.cfg
tests/zfs-tests/tests/functional/mmp/mmp.kshlib
tests/zfs-tests/tests/functional/mmp/mmp_active_import.ksh