summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLuca Berra <bluca@comedia.it>2011-06-17 14:35:06 +1000
committerNeilBrown <neilb@suse.de>2011-06-17 14:35:06 +1000
commite4c72d1dc69e576ca97163a3d4f44394e9bdd3ed (patch)
treeb26effb2332d116027b31ef48cb81759a1336c69
parent9e2d750d4c3a293db18115e255cc029d542f2528 (diff)
downloadmdadm-e4c72d1dc69e576ca97163a3d4f44394e9bdd3ed.tar.gz
Fix some compiler warnings.
Original by Luca, with various changes by Neil Signed-off-by: NeilBrown <neilb@suse.de>
-rw-r--r--Incremental.c2
-rw-r--r--mdmon.c6
-rw-r--r--super-intel.c3
-rw-r--r--super1.c9
-rw-r--r--sysfs.c5
5 files changed, 16 insertions, 9 deletions
diff --git a/Incremental.c b/Incremental.c
index aa98d06..951c2a0 100644
--- a/Incremental.c
+++ b/Incremental.c
@@ -705,7 +705,7 @@ static int count_active(struct supertype *st, struct mdinfo *sra,
int cnt = 0;
__u64 max_events = 0;
char *avail = NULL;
- int *best;
+ int *best = NULL;
char *devmap = NULL;
int numdevs = 0;
int devnum;
diff --git a/mdmon.c b/mdmon.c
index d633cb0..ee68e3c 100644
--- a/mdmon.c
+++ b/mdmon.c
@@ -514,6 +514,12 @@ static int mdmon(char *devname, int devnum, int must_fork, int takeover)
ignore = dup(0);
#endif
+ /* This silliness is to stop the compiler complaining
+ * that we ignore 'ignore'
+ */
+ if (ignore)
+ ignore++;
+
do_manager(container);
exit(0);
diff --git a/super-intel.c b/super-intel.c
index e9d9e35..2ef2b3c 100644
--- a/super-intel.c
+++ b/super-intel.c
@@ -7009,7 +7009,7 @@ static int apply_takeover_update(struct imsm_update_takeover *u,
for (du = super->missing; du; du = du->next)
if (du->index >= 0) {
set_imsm_ord_tbl_ent(map, du->index, du->index);
- mark_missing(dev_new, &du->disk, du->index);
+ mark_missing(dv->dev, &du->disk, du->index);
}
return 1;
@@ -8301,6 +8301,7 @@ static int imsm_create_metadata_update_for_reshape(
|| delta_disks > spares->array.spare_disks) {
fprintf(stderr, Name ": imsm: ERROR: Cannot get spare devices "
"for %s.\n", geo->dev_name);
+ i = -1;
goto abort;
}
diff --git a/super1.c b/super1.c
index 8164823..410436c 100644
--- a/super1.c
+++ b/super1.c
@@ -111,7 +111,6 @@ static unsigned int calc_sb_1_csum(struct mdp_superblock_1 * sb)
unsigned long long newcsum;
int size = sizeof(*sb) + __le32_to_cpu(sb->max_dev)*2;
unsigned int *isuper = (unsigned int*)sb;
- int i;
/* make sure I can count... */
if (offsetof(struct mdp_superblock_1,data_offset) != 128 ||
@@ -123,7 +122,7 @@ static unsigned int calc_sb_1_csum(struct mdp_superblock_1 * sb)
disk_csum = sb->sb_csum;
sb->sb_csum = 0;
newcsum = 0;
- for (i=0; size>=4; size -= 4 ) {
+ for (; size>=4; size -= 4 ) {
newcsum += __le32_to_cpu(*isuper);
isuper++;
}
@@ -387,15 +386,11 @@ static void examine_super1(struct supertype *st, char *homehost)
printf(" Array State : ");
for (d=0; d<__le32_to_cpu(sb->raid_disks) + delta_extra; d++) {
int cnt = 0;
- int me = 0;
unsigned int i;
for (i=0; i< __le32_to_cpu(sb->max_dev); i++) {
unsigned int role = __le16_to_cpu(sb->dev_roles[i]);
- if (role == d) {
- if (i == __le32_to_cpu(sb->dev_number))
- me = 1;
+ if (role == d)
cnt++;
- }
}
if (cnt > 1) printf("?");
else if (cnt == 1) printf("A");
diff --git a/sysfs.c b/sysfs.c
index f1c6669..44314ba 100644
--- a/sysfs.c
+++ b/sysfs.c
@@ -428,6 +428,11 @@ int sysfs_uevent(struct mdinfo *sra, char *event)
return -1;
n = write(fd, event, strlen(event));
close(fd);
+ if (n != (int)strlen(event)) {
+ dprintf(Name ": failed to write '%s' to '%s' (%s)\n",
+ event, fname, strerror(errno));
+ return -1;
+ }
return 0;
}