mirror of
https://git.proxmox.com/git/mirror_zfs.git
synced 2025-10-26 18:05:04 +03:00
In `vdev_load()`, we look up several entries in the `vdev_top_zap` object. In most cases, if we encounter an i/o error, it will be returned to the caller. However, when handling `VDEV_TOP_ZAP_ALLOCATION_BIAS`, if we get an i/o error, we may continue on, which in theory could cause us to not realize that a vdev should be used only for `special` allocations. In practice, if we encountered an i/o error while looking for `VDEV_TOP_ZAP_ALLOCATION_BIAS` in the `vdev_top_zap`, we'd also get an i/o error while looking for other entries in the same object, and thus the zpool open/import would fail. Therefore the impact of this problem is negligible. This commit adds error handling for i/o errors while accessing the `vdev_top_zap`, so that we aren't relying on unrelated code to fail for us. Reviewed-by: Don Brady <don.brady@delphix.com> Reviewed-by: Brian Behlendorf <behlendorf1@llnl.gov> Signed-off-by: Matthew Ahrens <mahrens@delphix.com> Closes #10637 |
||
|---|---|---|
| .. | ||
| avl | ||
| icp | ||
| lua | ||
| nvpair | ||
| os | ||
| spl | ||
| unicode | ||
| zcommon | ||
| zfs | ||
| .gitignore | ||
| Kbuild.in | ||
| Makefile.bsd | ||
| Makefile.in | ||