fix mdmon takeover

- when we waited for the old mdmon to exit, we didn't look
  for the socket in the right place

- when we failed to find a pid file, we returned the wrong
  value (code expected <0, but got ==0).

Signed-off-by: Luca Berra <bluca@comedia.it>
Signed-off-by: NeilBrown <neilb@suse.de>
This commit is contained in:
Luca Berra 2010-02-27 16:07:51 +01:00 committed by NeilBrown
parent eb49460b74
commit cf55630357
2 changed files with 3 additions and 3 deletions

2
msg.c
View File

@ -147,7 +147,7 @@ int connect_monitor(char *devname)
int pos;
char *c;
pos = sprintf(path, "%s/", VAR_RUN);
pos = sprintf(path, "%s/", pid_dir);
if (is_subarray(devname)) {
devname++;
c = strchr(devname, '/');

4
util.c
View File

@ -1478,11 +1478,11 @@ int mdmon_pid(int devnum)
fd = open(path, O_RDONLY | O_NOATIME, 0);
if (fd < 0)
return 0;
return -1;
n = read(fd, pid, 9);
close(fd);
if (n <= 0)
return 0;
return -1;
return atoi(pid);
}