summary |
tags |
clone url |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (from parent 1:
221be16)
SCCS-vsn: sbin/dump/tape.c 5.4
-static char sccsid[] = "@(#)tape.c 5.3 (Berkeley) %G%";
+static char sccsid[] = "@(#)tape.c 5.4 (Berkeley) %G%";
#endif not lint
#include <sys/file.h>
#endif not lint
#include <sys/file.h>
strcpy(tmpname, "/tmp/dumplockXXXXXX");
mktemp(tmpname);
strcpy(tmpname, "/tmp/dumplockXXXXXX");
mktemp(tmpname);
- if ((fd[1] = creat(tmpname, 0400)) < 0)
- return(fd[1]);
- fd[0] = open(tmpname, 0);
+ if ((fd[1] = creat(tmpname, 0400)) < 0) {
+ msg("Could not create lockfile ");
+ perror(tmpname);
+ dumpabort();
+ }
+ if ((fd[0] = open(tmpname, 0)) < 0) {
+ msg("Could not reopen lockfile ");
+ perror(tmpname);
+ dumpabort();
+ }
- return (fd[0] < 0 ? fd[0] : 0);
prev[1] = next[1];
flock(prev[1], LOCK_EX);
}
prev[1] = next[1];
flock(prev[1], LOCK_EX);
}
- next[0] = first[0];
- next[1] = first[1]; /* Last slave loops back */
- if ((i < SLAVES-1 && lockfile(next) < 0) || pipe(cmd) < 0
- || (slavepid[i] = fork()) < 0) {
- perror(" DUMP: too many slaves (recompile smaller)");
+ if (i < SLAVES - 1) {
+ lockfile(next);
+ } else {
+ next[0] = first[0];
+ next[1] = first[1]; /* Last slave loops back */
+ }
+ if (pipe(cmd) < 0 || (slavepid[i] = fork()) < 0) {
+ msg("too many slaves, %d (recompile smaller) ", i);
+ perror("");
dumpabort();
}
slavefd[i] = cmd[1];
dumpabort();
}
slavefd[i] = cmd[1];