usr/src/uts/common/fs/zfs/spa.c
changeset 1175 759d20c7e57b
parent 797 af56ba8b7e41
child 1354 81359ee1ee63
--- a/usr/src/uts/common/fs/zfs/spa.c	Thu Dec 22 16:02:27 2005 -0800
+++ b/usr/src/uts/common/fs/zfs/spa.c	Thu Dec 22 16:47:43 2005 -0800
@@ -910,7 +910,11 @@
 	if ((error = vdev_create(newrootvd, txg)) != 0)
 		return (spa_vdev_exit(spa, newrootvd, txg, error));
 
-	if (newvd->vdev_psize < oldvd->vdev_psize)
+	/*
+	 * Compare the new device size with the replaceable/attachable
+	 * device size.
+	 */
+	if (newvd->vdev_psize < vdev_get_rsize(oldvd))
 		return (spa_vdev_exit(spa, newrootvd, txg, EOVERFLOW));
 
 	if (newvd->vdev_ashift != oldvd->vdev_ashift && oldvd->vdev_ashift != 0)