summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNeilBrown <neilb@suse.de>2013-09-02 11:02:09 +1000
committerNeilBrown <neilb@suse.de>2013-09-02 11:02:09 +1000
commit2f1bcf43d93a991845b2ebee76850bd4dc5bc7fc (patch)
treeea0e94fb1db7aecf8c43e2f1ef45bcb10998933d
parent2cdd5ce0e703c46c5cead329d94ccc67c69fd4d0 (diff)
Make sure "mdmon" doesn't get called "@dmon".
The Anaconda installer (via its "loader" program) will try to kill many processes at shutdown, but not "mdmon". However when mdadm runs mdmon in the Anaconda environment, mdmon sets argv[0][0] to '@' resulting in "@dmon" which confuses "loader". So change mdadm to set argv[0] to a path so that mdmon becomes e.g. "@usr/sbin/mdmon" which "loader" will recognise as being "mdmon". Reported-by: Martin Wilck <mwilck@arcor.de> Signed-off-by: NeilBrown <neilb@suse.de>
-rw-r--r--util.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/util.c b/util.c
index 491a1075..c12fb211 100644
--- a/util.c
+++ b/util.c
@@ -1691,7 +1691,7 @@ int start_mdmon(char *devnm)
char *paths[4] = {
pathbuf,
"/sbin/mdmon",
- "mdmon",
+ "./mdmon",
NULL
};
@@ -1759,7 +1759,7 @@ int start_mdmon(char *devnm)
for (i = 0; paths[i]; i++)
if (paths[i][0]) {
- execl(paths[i], "mdmon",
+ execl(paths[i], paths[i],
devnm, NULL);
}
exit(1);