dweeezil commented on this pull request.
> + * vdevs, we can not add redundant toplevels. This ensures that
+ * we do not rely on resilver, which does not properly handle
+ * indirect vdevs.
+ */
+ if (spa->spa_vdev_removal != NULL ||
+ spa->spa_removing_phys.sr_prev_indirect_vdev != -1) {
+ for (int c = 0; c < vd->vdev_children; c++) {
+ if (spa->spa_vdev_removal != NULL &&
+ vd->vdev_child[c]->vdev_ashift !=
+ spa->spa_vdev_removal->svr_vdev->vdev_ashift) {
+ return (spa_vdev_exit(spa, vd, txg, EINVAL));
+ }
+ /* Fail if its raidz */
+ if (vd->vdev_ops == &vdev_raidz_ops) {
+ return (spa_vdev_exit(spa, vd, txg, EINVAL));
+ }
Looks good and does properly fix the test case.
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/openzfs/openzfs/pull/482#discussion_r154553504
------------------------------------------
openzfs-developer
Archives:
https://openzfs.topicbox.com/groups/developer/discussions/Teafc5ffabd7f916f-M607277be87479a2ab5e61aa2
Powered by Topicbox: https://topicbox.com