From: Mateusz Kusiak Date: Wed, 28 Feb 2024 15:37:20 +0000 (+0100) Subject: Monitor: Allow no PID in check_one_sharer() X-Git-Tag: mdadm-4.4~234 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=3c3ddeeccc1eb4accb62ce9920de430a564be806;p=thirdparty%2Fmdadm.git Monitor: Allow no PID in check_one_sharer() Commit 5fb5479ad100 ("Monitor: open file before check in check_one_sharer()") introduced a regression that prohibits monitor from starting if PID file does not exist. Add check for no PID file. Add missing fclose(). Signed-off-by: Mateusz Kusiak Signed-off-by: Mariusz Tkaczyk --- diff --git a/Monitor.c b/Monitor.c index 7cee95d4..9be2b528 100644 --- a/Monitor.c +++ b/Monitor.c @@ -453,12 +453,17 @@ static int check_one_sharer(int scan) fp = fopen(AUTOREBUILD_PID_PATH, "r"); if (!fp) { + /* PID file does not exist */ + if (errno == ENOENT) + return 0; + pr_err("Cannot open %s file.\n", AUTOREBUILD_PID_PATH); return 2; } if (!is_file(AUTOREBUILD_PID_PATH)) { pr_err("%s is not a regular file.\n", AUTOREBUILD_PID_PATH); + fclose(fp); return 2; }