diff options
author | NeilBrown <neilb@suse.de> | 2010-02-04 16:47:21 +1100 |
---|---|---|
committer | NeilBrown <neilb@suse.de> | 2010-02-04 16:47:21 +1100 |
commit | 24f6f99b3630b1a89aaa57930c5c9de8a3df9ded (patch) | |
tree | 9f2d74d91cf1a4c76a0be20cd1af7185680c62fa /util.c | |
parent | 24cfdbc5c0b6a1ccae28ffb10a707160525f18c6 (diff) | |
download | mdadm-24f6f99b3630b1a89aaa57930c5c9de8a3df9ded.tar.gz mdadm-24f6f99b3630b1a89aaa57930c5c9de8a3df9ded.tar.xz mdadm-24f6f99b3630b1a89aaa57930c5c9de8a3df9ded.zip |
Having single function to read mdmon pid file.
We don't need three.
One (signal_mdmon) wasn't even being used.
Signed-off-by: NeilBrown <neilb@suse.de>
Diffstat (limited to 'util.c')
-rw-r--r-- | util.c | 26 |
1 files changed, 7 insertions, 19 deletions
@@ -1463,14 +1463,14 @@ int fd2devnum(int fd) return NoMdDev; } -int mdmon_running(int devnum) +int mdmon_pid(int devnum) { char path[100]; char pid[10]; int fd; int n; sprintf(path, "/var/run/mdadm/%s.pid", devnum2devname(devnum)); - fd = open(path, O_RDONLY, 0); + fd = open(path, O_RDONLY | O_NOATIME, 0); if (fd < 0) return 0; @@ -1478,27 +1478,15 @@ int mdmon_running(int devnum) close(fd); if (n <= 0) return 0; - if (kill(atoi(pid), 0) == 0) - return 1; - return 0; + return atoi(pid); } -int signal_mdmon(int devnum) +int mdmon_running(int devnum) { - char path[100]; - char pid[10]; - int fd; - int n; - sprintf(path, "/var/run/mdadm/%s.pid", devnum2devname(devnum)); - fd = open(path, O_RDONLY, 0); - - if (fd < 0) - return 0; - n = read(fd, pid, 9); - close(fd); - if (n <= 0) + int pid = mdmon_pid(devnum); + if (pid <= 0) return 0; - if (kill(atoi(pid), SIGUSR1) == 0) + if (kill(pid, 0) == 0) return 1; return 0; } |