svn commit: r212382 - head/sys/boot/zfs

Pawel Jakub Dawidek pjd at FreeBSD.org
Thu Sep 9 21:15:17 UTC 2010


Author: pjd
Date: Thu Sep  9 21:15:16 2010
New Revision: 212382
URL: http://svn.freebsd.org/changeset/base/212382

Log:
  Remove duplicated code.
  
  MFC after:	2 weeks

Modified:
  head/sys/boot/zfs/zfsimpl.c

Modified: head/sys/boot/zfs/zfsimpl.c
==============================================================================
--- head/sys/boot/zfs/zfsimpl.c	Thu Sep  9 21:01:41 2010	(r212381)
+++ head/sys/boot/zfs/zfsimpl.c	Thu Sep  9 21:15:16 2010	(r212382)
@@ -488,7 +488,16 @@ vdev_init_from_nvlist(const unsigned cha
 				vdev->v_name = strdup(type);
 			}
 		}
+	} else {
+		is_new = 0;
+	}
 
+	if (is_new || is_newer) {
+		/*
+		 * This is either new vdev or we've already seen this vdev,
+		 * but from an older vdev label, so let's refresh its state
+		 * from the newer label.
+		 */
 		if (is_offline)
 			vdev->v_state = VDEV_STATE_OFFLINE;
 		else if (is_removed)
@@ -499,26 +508,6 @@ vdev_init_from_nvlist(const unsigned cha
 			vdev->v_state = VDEV_STATE_DEGRADED;
 		else
 			vdev->v_state = VDEV_STATE_HEALTHY;
-	} else {
-		is_new = 0;
-
-		if (is_newer) {
-			/*
-			 * We've already seen this vdev, but from an older
-			 * vdev label, so let's refresh its state from the
-			 * newer label.
-			 */
-			if (is_offline)
-				vdev->v_state = VDEV_STATE_OFFLINE;
-			else if (is_removed)
-				vdev->v_state = VDEV_STATE_REMOVED;
-			else if (is_faulted)
-				vdev->v_state = VDEV_STATE_FAULTED;
-			else if (is_degraded)
-				vdev->v_state = VDEV_STATE_DEGRADED;
-			else
-				vdev->v_state = VDEV_STATE_HEALTHY;
-		}
 	}
 
 	rc = nvlist_find(nvlist, ZPOOL_CONFIG_CHILDREN,


More information about the svn-src-all mailing list