diff options
author | Dan Williams <dan.j.williams@intel.com> | 2008-09-28 12:12:07 -0700 |
---|---|---|
committer | Dan Williams <dan.j.williams@intel.com> | 2008-10-15 14:15:52 -0700 |
commit | 3d2c4fc7b6bed924f8d5d1eae9a164b191e1b6da (patch) | |
tree | d8ade835972ae3cc8f1103dfcd036fefa91bd971 /mdmon.c | |
parent | 3f6efecc4ccc4b5e50ade7368cf825c372cda0cf (diff) |
trivial warn_unused_result squashing
Made the mistake of recompiling the F9 mdadm rpm which has a patch to
remove -Werror and add "-Wp,-D_FORTIFY_SOURCE -O2" which turns on lots
of errors:
config.c:568: warning: ignoring return value of asprintf
Assemble.c:411: warning: ignoring return value of asprintf
Assemble.c:413: warning: ignoring return value of asprintf
super0.c:549: warning: ignoring return value of posix_memalign
super0.c:742: warning: ignoring return value of posix_memalign
super0.c:812: warning: ignoring return value of posix_memalign
super1.c:692: warning: ignoring return value of posix_memalign
super1.c:1039: warning: ignoring return value of posix_memalign
super1.c:1155: warning: ignoring return value of posix_memalign
super-ddf.c:508: warning: ignoring return value of posix_memalign
super-ddf.c:645: warning: ignoring return value of posix_memalign
super-ddf.c:696: warning: ignoring return value of posix_memalign
super-ddf.c:715: warning: ignoring return value of posix_memalign
super-ddf.c:1476: warning: ignoring return value of posix_memalign
super-ddf.c:1603: warning: ignoring return value of posix_memalign
super-ddf.c:1614: warning: ignoring return value of posix_memalign
super-ddf.c:1842: warning: ignoring return value of posix_memalign
super-ddf.c:2013: warning: ignoring return value of posix_memalign
super-ddf.c:2140: warning: ignoring return value of write
super-ddf.c:2143: warning: ignoring return value of write
super-ddf.c:2147: warning: ignoring return value of write
super-ddf.c:2150: warning: ignoring return value of write
super-ddf.c:2162: warning: ignoring return value of write
super-ddf.c:2169: warning: ignoring return value of write
super-ddf.c:2172: warning: ignoring return value of write
super-ddf.c:2176: warning: ignoring return value of write
super-ddf.c:2181: warning: ignoring return value of write
super-ddf.c:2686: warning: ignoring return value of posix_memalign
super-ddf.c:2690: warning: ignoring return value of write
super-ddf.c:3070: warning: ignoring return value of posix_memalign
super-ddf.c:3254: warning: ignoring return value of posix_memalign
bitmap.c:128: warning: ignoring return value of posix_memalign
mdmon.c:94: warning: ignoring return value of write
mdmon.c:221: warning: ignoring return value of pipe
mdmon.c:327: warning: ignoring return value of write
mdmon.c:330: warning: ignoring return value of chdir
mdmon.c:335: warning: ignoring return value of dup
monitor.c:415: warning: rv may be used uninitialized in this function
...some of these like the write() ones are not so trivial so save those
fixes for the next patch.
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
Diffstat (limited to 'mdmon.c')
-rw-r--r-- | mdmon.c | 22 |
1 files changed, 16 insertions, 6 deletions
@@ -85,14 +85,18 @@ int make_pidfile(char *devname, int o_excl) char path[100]; char pid[10]; int fd; + int n; + sprintf(path, "/var/run/mdadm/%s.pid", devname); fd = open(path, O_RDWR|O_CREAT|o_excl, 0600); if (fd < 0) return -errno; sprintf(pid, "%d\n", getpid()); - write(fd, pid, strlen(pid)); + n = write(fd, pid, strlen(pid)); close(fd); + if (n < 0) + return -errno; return 0; } @@ -199,6 +203,7 @@ int main(int argc, char *argv[]) struct sigaction act; int pfd[2]; int status; + int ignore; if (argc != 2) { fprintf(stderr, "Usage: md-manage /device/name/for/container\n"); @@ -218,7 +223,10 @@ int main(int argc, char *argv[]) /* Fork, and have the child tell us when they are ready */ if (do_fork()) { - pipe(pfd); + if (pipe(pfd) != 0) { + fprintf(stderr, "mdmon: failed to create pipe\n"); + exit(1); + } switch(fork()) { case -1: fprintf(stderr, "mdmon: failed to fork: %s\n", @@ -324,18 +332,20 @@ int main(int argc, char *argv[]) /* Ok, this is close enough. We can say goodbye to our parent now. */ status = 0; - write(pfd[1], &status, sizeof(status)); + if (write(pfd[1], &status, sizeof(status)) < 0) + fprintf(stderr, "mdmon: failed to notify our parent: %d\n", + getppid()); close(pfd[1]); - chdir("/"); + ignore = chdir("/"); setsid(); close(0); open("/dev/null", O_RDWR); close(1); - dup(0); + ignore = dup(0); #ifndef DEBUG close(2); - dup(0); + ignore = dup(0); #endif mlockall(MCL_FUTURE); |