Blame SOURCES/Incremental-Cleanup-some-if-statement-spaghetti.patch

2c1b57
From f8c432bfc9929dbbcb659b2d11552dc9fc76ad24 Mon Sep 17 00:00:00 2001
2c1b57
From: Jes Sorensen <jsorensen@fb.com>
2c1b57
Date: Tue, 25 Apr 2017 15:01:43 -0400
2c1b57
Subject: [RHEL7.5 PATCH 099/169] Incremental: Cleanup some if() statement
2c1b57
 spaghetti
2c1b57
2c1b57
Signed-off-by: Jes Sorensen <jsorensen@fb.com>
2c1b57
---
2c1b57
 Incremental.c | 50 +++++++++++++++++++++-----------------------------
2c1b57
 1 file changed, 21 insertions(+), 29 deletions(-)
2c1b57
2c1b57
diff --git a/Incremental.c b/Incremental.c
2c1b57
index a351151..66c5b03 100644
2c1b57
--- a/Incremental.c
2c1b57
+++ b/Incremental.c
2c1b57
@@ -225,8 +225,8 @@ int Incremental(struct mddev_dev *devlist, struct context *c,
2c1b57
 	if (!match && rv == 2)
2c1b57
 		goto out;
2c1b57
 
2c1b57
-	if (match && match->devname
2c1b57
-	    && strcasecmp(match->devname, "<ignore>") == 0) {
2c1b57
+	if (match && match->devname &&
2c1b57
+	    strcasecmp(match->devname, "<ignore>") == 0) {
2c1b57
 		if (c->verbose >= 0)
2c1b57
 			pr_err("array containing %s is explicitly ignored by mdadm.conf\n",
2c1b57
 				devname);
2c1b57
@@ -267,8 +267,7 @@ int Incremental(struct mddev_dev *devlist, struct context *c,
2c1b57
 		c->autof = ci->autof;
2c1b57
 
2c1b57
 	name_to_use = info.name;
2c1b57
-	if (name_to_use[0] == 0 &&
2c1b57
-	    info.array.level == LEVEL_CONTAINER) {
2c1b57
+	if (name_to_use[0] == 0 && info.array.level == LEVEL_CONTAINER) {
2c1b57
 		name_to_use = info.text_version;
2c1b57
 		trustworthy = METADATA;
2c1b57
 	}
2c1b57
@@ -398,11 +397,10 @@ int Incremental(struct mddev_dev *devlist, struct context *c,
2c1b57
 		 * flag has a different meaning.  The test has to happen
2c1b57
 		 * at the device level there
2c1b57
 		 */
2c1b57
-		if (!st->ss->external
2c1b57
-		    && (info.disk.state & (1<
2c1b57
-		    && ! policy_action_allows(policy, st->ss->name,
2c1b57
-					      act_re_add)
2c1b57
-		    && c->runstop < 1) {
2c1b57
+		if (!st->ss->external &&
2c1b57
+		    (info.disk.state & (1 << MD_DISK_SYNC)) != 0 &&
2c1b57
+		    !policy_action_allows(policy, st->ss->name, act_re_add) &&
2c1b57
+		    c->runstop < 1) {
2c1b57
 			if (md_array_active(mdfd)) {
2c1b57
 				pr_err("not adding %s to active array (without --run) %s\n",
2c1b57
 				       devname, chosen_name);
2c1b57
@@ -537,8 +535,7 @@ int Incremental(struct mddev_dev *devlist, struct context *c,
2c1b57
 		info.array.state |= 1;
2c1b57
 
2c1b57
 	if (enough(info.array.level, info.array.raid_disks,
2c1b57
-		   info.array.layout, info.array.state & 1,
2c1b57
-		   avail) == 0) {
2c1b57
+		   info.array.layout, info.array.state & 1, avail) == 0) {
2c1b57
 		if (c->export) {
2c1b57
 			printf("MD_STARTED=no\n");
2c1b57
 		} else if (c->verbose >= 0)
2c1b57
@@ -599,8 +596,8 @@ int Incremental(struct mddev_dev *devlist, struct context *c,
2c1b57
 			if (d->disk.state & (1<
2c1b57
 				remove_disk(mdfd, st, sra, d);
2c1b57
 
2c1b57
-		if ((sra == NULL || active_disks >= info.array.working_disks)
2c1b57
-		    && trustworthy != FOREIGN)
2c1b57
+		if ((sra == NULL || active_disks >= info.array.working_disks) &&
2c1b57
+		    trustworthy != FOREIGN)
2c1b57
 			rv = ioctl(mdfd, RUN_ARRAY, NULL);
2c1b57
 		else
2c1b57
 			rv = sysfs_set_str(sra, NULL,
2c1b57
@@ -624,7 +621,8 @@ int Incremental(struct mddev_dev *devlist, struct context *c,
2c1b57
 			 * those devices we should re-add them now.
2c1b57
 			 */
2c1b57
 			for (dsk = sra->devs; dsk ; dsk = dsk->next) {
2c1b57
-				if (disk_action_allows(dsk, st->ss->name, act_re_add) &&
2c1b57
+				if (disk_action_allows(dsk, st->ss->name,
2c1b57
+						       act_re_add) &&
2c1b57
 				    add_disk(mdfd, st, sra, dsk) == 0)
2c1b57
 					pr_err("%s re-added to %s\n",
2c1b57
 					       dsk->sys_name, chosen_name);
2c1b57
@@ -688,8 +686,7 @@ static void find_reject(int mdfd, struct supertype *st, struct mdinfo *sra,
2c1b57
 		st->ss->free_super(st);
2c1b57
 		close(dfd);
2c1b57
 
2c1b57
-		if (info.disk.number != number ||
2c1b57
-		    info.events >= events)
2c1b57
+		if (info.disk.number != number || info.events >= events)
2c1b57
 			continue;
2c1b57
 
2c1b57
 		if (d->disk.raid_disk > -1)
2c1b57
@@ -970,11 +967,9 @@ static int array_try_spare(char *devname, int *dfdp, struct dev_policy *pol,
2c1b57
 		}
2c1b57
 		if ((sra->component_size > 0 &&
2c1b57
 		     st2->ss->avail_size(st2, devsize,
2c1b57
-					 sra->devs
2c1b57
-					 ? sra->devs->data_offset
2c1b57
-					 : INVALID_SECTORS)
2c1b57
-		     < sra->component_size)
2c1b57
-		    ||
2c1b57
+					 sra->devs ? sra->devs->data_offset :
2c1b57
+					 INVALID_SECTORS) <
2c1b57
+		     sra->component_size) ||
2c1b57
 		    (sra->component_size == 0 && devsize < component_size)) {
2c1b57
 			if (verbose > 1)
2c1b57
 				pr_err("not adding %s to %s as it is too small\n",
2c1b57
@@ -1107,8 +1102,7 @@ static int partition_try_spare(char *devname, int *dfdp, struct dev_policy *pol,
2c1b57
 		char *devname = NULL;
2c1b57
 		unsigned long long devsectors;
2c1b57
 
2c1b57
-		if (de->d_ino == 0 ||
2c1b57
-		    de->d_name[0] == '.' ||
2c1b57
+		if (de->d_ino == 0 || de->d_name[0] == '.' ||
2c1b57
 		    (de->d_type != DT_LNK && de->d_type != DT_UNKNOWN))
2c1b57
 			goto next;
2c1b57
 
2c1b57
@@ -1146,8 +1140,7 @@ static int partition_try_spare(char *devname, int *dfdp, struct dev_policy *pol,
2c1b57
 			st2 = dup_super(st);
2c1b57
 		else
2c1b57
 			st2 = guess_super_type(fd, guess_partitions);
2c1b57
-		if (st2 == NULL ||
2c1b57
-		    st2->ss->load_super(st2, fd, NULL) < 0)
2c1b57
+		if (st2 == NULL || st2->ss->load_super(st2, fd, NULL) < 0)
2c1b57
 			goto next;
2c1b57
 		st2->ignore_hw_compat = 0;
2c1b57
 
2c1b57
@@ -1175,8 +1168,7 @@ static int partition_try_spare(char *devname, int *dfdp, struct dev_policy *pol,
2c1b57
 		 * metadata which makes better use of the device can
2c1b57
 		 * be found.
2c1b57
 		 */
2c1b57
-		if (chosen == NULL ||
2c1b57
-		    chosen_size < info.component_size) {
2c1b57
+		if (chosen == NULL || chosen_size < info.component_size) {
2c1b57
 			chosen_size = info.component_size;
2c1b57
 			free(chosen);
2c1b57
 			chosen = devname;
2c1b57
@@ -1399,8 +1391,8 @@ restart:
2c1b57
 		}
2c1b57
 		/* Ok, we can try this one.   Maybe it needs a bitmap */
2c1b57
 		for (mddev = devs ; mddev ; mddev = mddev->next)
2c1b57
-			if (mddev->devname && me->path
2c1b57
-			    && devname_matches(mddev->devname, me->path))
2c1b57
+			if (mddev->devname && me->path &&
2c1b57
+			    devname_matches(mddev->devname, me->path))
2c1b57
 				break;
2c1b57
 		if (mddev && mddev->bitmap_file) {
2c1b57
 			/*
2c1b57
-- 
2c1b57
2.7.4
2c1b57