diff options
author | Pavel Zakharov <[email protected]> | 2016-10-19 17:46:08 -0400 |
---|---|---|
committer | Brian Behlendorf <[email protected]> | 2018-05-14 14:28:09 -0400 |
commit | a11c7aaec9c10f22f3259545e2697005cfd19863 (patch) | |
tree | 424c4681d9ffb85cd86bf5a011c8b0b446ccb9ba /etc | |
parent | b669ab83bb3636e86b8fda271ee1549f2692d03a (diff) |
OpenZFS 9187 - racing condition between vdev label and spa_last_synced_txg in vdev_validate
ztest failed with uncorrectable IO error despite having the fix for
7163. Both sides of the mirror have CANT_OPEN_BAD_LABEL, which also
distinguishes it from that issue.
Definitely seems like a racing condition between the vdev_validate
and spa_sync:
1. Thread A (spa_sync): vdev label is updated to latest txg
2. Thread B (vdev_validate): vdev label's txg is compared to
spa_last_synced_txg and is ahead.
3. Thread A (spa_sync): spa_last_synced_txg is updated to latest txg.
Solution: do not check txg in vdev_validate unless config lock is held.
Authored by: Pavel Zakharov <[email protected]>
Reviewed by: George Wilson <[email protected]>
Reviewed by: Matt Ahrens <[email protected]>
Reviewed-by: Giuseppe Di Natale <[email protected]>
Approved by: Robert Mustacchi <[email protected]>
Ported-by: Brian Behlendorf <[email protected]>
OpenZFS-issue: https://illumos.org/issues/9187
OpenZFS-commit: https://github.com/openzfs/openzfs/commit/805fda72
Closes #7529
Diffstat (limited to 'etc')
0 files changed, 0 insertions, 0 deletions