[PATCH] Monitor: pass statelist reference when adding new arrays

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



>From af217d38a81223408fc53ef485d7c5bd43b9d841 Mon Sep 17 00:00:00 2001
From: Anna Czarnowska <anna.czarnowska@xxxxxxxxx>
Date: Tue, 30 Nov 2010 14:44:45 +0100
Subject: [PATCH] Monitor: pass statelist reference when adding new arrays
Cc: linux-raid@xxxxxxxxxxxxxxx, Williams, Dan J <dan.j.williams@xxxxxxxxx>, Ciechanowski, Ed <ed.ciechanowski@xxxxxxxxx>

Otherwise it will not get updated.

Signed-off-by: Anna Czarnowska <anna.czarnowska@xxxxxxxxx>
---
 Monitor.c |   10 +++++-----
 1 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/Monitor.c b/Monitor.c
index d5514e9..e7f6d03 100644
--- a/Monitor.c
+++ b/Monitor.c
@@ -70,7 +70,7 @@ static void alert(char *event, char *dev, char *disc, struct alert_info *info);
 static int check_array(struct state *st, struct mdstat_ent *mdstat,
 		       int test, struct alert_info *info,
 		       int increments);
-static int add_new_arrays(struct mdstat_ent *mdstat, struct state *statelist,
+static int add_new_arrays(struct mdstat_ent *mdstat, struct state **statelist,
 			  int test, struct alert_info *info);
 static void try_spare_migration(struct state *statelist, struct alert_info *info);
 static void link_containers_with_subarrays(struct state *list);
@@ -223,7 +223,7 @@ int Monitor(struct mddev_dev *devlist,
 		
 		/* now check if there are any new devices found in mdstat */
 		if (scan)
-			new_found = add_new_arrays(mdstat, statelist, test,
+			new_found = add_new_arrays(mdstat, &statelist, test,
 						   &info);
 
 		/* If an array has active < raid && spare == 0 && spare_group != NULL
@@ -642,7 +642,7 @@ static int check_array(struct state *st, struct mdstat_ent *mdstat,
 	return 0;
 }
 
-static int add_new_arrays(struct mdstat_ent *mdstat, struct state *statelist,
+static int add_new_arrays(struct mdstat_ent *mdstat, struct state **statelist,
 			  int test, struct alert_info *info)
 {
 	struct mdstat_ent *mse;
@@ -674,7 +674,7 @@ static int add_new_arrays(struct mdstat_ent *mdstat, struct state *statelist,
 				continue;
 			}
 			close(fd);
-			st->next = statelist;
+			st->next = *statelist;
 			st->err = 1;
 			st->devnum = mse->devnum;
 			st->percent = -2;
@@ -685,7 +685,7 @@ static int add_new_arrays(struct mdstat_ent *mdstat, struct state *statelist,
 					devname2devnum(mse->metadata_version+10);
 			else
 				st->parent_dev = NoMdDev;
-			statelist = st;
+			*statelist = st;
 			if (test)
 				alert("TestMessage", st->devname, NULL, info);
 			alert("NewArray", st->devname, NULL, info);
-- 
1.7.1

--
To unsubscribe from this list: send the line "unsubscribe linux-raid" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux RAID Wiki]     [ATA RAID]     [Linux SCSI Target Infrastructure]     [Linux Block]     [Linux IDE]     [Linux SCSI]     [Linux Hams]     [Device Mapper]     [Device Mapper Cryptographics]     [Kernel]     [Linux Admin]     [Linux Net]     [GFS]     [RPM]     [git]     [Yosemite Forum]


  Powered by Linux