Blob Blame History Raw
---
 iprutils/iprconfig.c |   14 +++-----------
 1 file changed, 3 insertions(+), 11 deletions(-)

Index: b/iprutils/iprconfig.c
===================================================================
--- a/iprutils/iprconfig.c	2014-01-31 17:18:38.000000000 -0600
+++ b/iprutils/iprconfig.c	2014-01-31 17:22:35.847766342 -0600
@@ -3847,6 +3847,8 @@ int confirm_raid_start(i_container *i_co
 		rc = ipr_start_array_protection(ioa,
 						cur_raid_cmd->stripe_size,
 						cur_raid_cmd->prot_level);
+		if (rc)
+			return RC_19_Create_Fail;
 	}
 
 	rc = raid_start_complete();
@@ -13297,7 +13299,7 @@ static int format_for_raid(char **args, 
 static int raid_create(char **args, int num_args)
 {
 	int i, num_devs = 0, rc;
-	int hdd_count = 0, ssd_count = 0, non_4k_count = 0, is_4k_count = 0;
+	int non_4k_count = 0, is_4k_count = 0;
 	int next_raid_level, next_stripe_size, next_qdepth;
 	char *raid_level = IPR_DEFAULT_RAID_LVL;
 	int stripe_size, qdepth, zeroed_devs;
@@ -13355,22 +13357,12 @@ static int raid_create(char **args, int 
 			return -EINVAL;
 		}
 
-		if (dev->block_dev_class & IPR_SSD)
-			ssd_count++;
-		else
-			hdd_count++;
-
 		if (dev->block_dev_class & IPR_BLK_DEV_CLASS_4K)
 			is_4k_count++;
 		else
 			non_4k_count++;
 	}
 
-	if (hdd_count > 0 && ssd_count > 0) {
-		syslog(LOG_ERR, _("SSDs and HDDs can not be mixed in an array.\n"));
-		return -EINVAL;
-	}
-
 	if (is_4k_count > 0 && non_4k_count > 0) {
 		syslog(LOG_ERR, _("4K disks and 5XX disks can not be mixed in an array.\n"));
 		return -EINVAL;