summaryrefslogtreecommitdiffstats
path: root/mdopen.c
diff options
context:
space:
mode:
authorDan Williams <dan.j.williams@intel.com>2008-11-26 11:25:10 -0700
committerNeilBrown <neilb@suse.de>2008-11-27 15:29:54 +1100
commit614825ea825ac70ba847cd87e3beafcc557c6273 (patch)
tree1f047b451cfc2d3d2601ffd151b6d68a9c98cd08 /mdopen.c
parenta30b2ecd4a4215b0c0017edc6df538c264a97e85 (diff)
downloadmdadm-614825ea825ac70ba847cd87e3beafcc557c6273.tar.gz
mdadm-614825ea825ac70ba847cd87e3beafcc557c6273.tar.xz
mdadm-614825ea825ac70ba847cd87e3beafcc557c6273.zip
some warn_unused_result fixups
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
Diffstat (limited to 'mdopen.c')
-rw-r--r--mdopen.c14
1 files changed, 9 insertions, 5 deletions
diff --git a/mdopen.c b/mdopen.c
index 26da33e..b4d7bdc 100644
--- a/mdopen.c
+++ b/mdopen.c
@@ -52,6 +52,7 @@ void make_parts(char *dev, int cnt)
int dig = isdigit(dev[strlen(dev)-1]);
char orig[1024];
char sym[1024];
+ int err;
if (cnt==0) cnt=4;
if (lstat(dev, &stb)!= 0)
@@ -87,12 +88,14 @@ void make_parts(char *dev, int cnt)
perror("chown");
if (chmod(name, stb2.st_mode & 07777))
perror("chmod");
+ err = 0;
} else {
snprintf(sym, sizeof(sym), "%s%s%d", orig, odig?"p":"", i);
- symlink(sym, name);
+ err = symlink(sym, name);
}
- stat(name, &stb2);
- add_dev(name, &stb2, 0, NULL);
+
+ if (err == 0 && stat(name, &stb2) == 0)
+ add_dev(name, &stb2, 0, NULL);
}
}
@@ -356,8 +359,9 @@ int create_mddev(char *dev, char *name, int autof, int trustworthy,
chosen);
strcpy(chosen, devname);
}
- } else
- symlink(devname, chosen);
+ } else if (symlink(devname, chosen) != 0)
+ fprintf(stderr, Name ": failed to create %s: %s\n",
+ chosen, strerror(errno));
if (use_mdp && strcmp(chosen, devname) != 0)
make_parts(chosen, parts);
}