Hi Jes,
Could you take this one for 4.2? It is posted for a while, which fixes a
bug report of mine.
Thanks.
Coly Li
On 9/2/21 3:32 PM, Coly Li wrote:
If there is no array device to monitor, Monitor() will stop monitoring
at line 261 from the following code block,
257 if (!new_found) {
258 if (oneshot)
259 break;
260 else if (!anyredundant) {
261 break;
262 }
This change was introduced by commit 007087d0898a ("Monitor: stop
notifing about containers"). Before this commit, Monitor() will continue
and won't quit even there is no array to monitor.
It is fine to quit without any array device to monitor, but users may
wonder whether there is something wrong with mdadm program or their
configuration to make mdadm quit monitoring.
This patch adds a simple error message to indicate Monitor() quits for
array device to monitor, which makes users have hint to understand why
mdadm stops monitoring.
Reported-by: George Gkioulis <ggkioulis@xxxxxxxx>
Suggested-by: Mariusz Tkaczyk <mariusz.tkaczyk@xxxxxxxxxxxxxxx>
Signed-off-by: Coly Li <colyli@xxxxxxx>
Cc: Jes Sorensen <jsorensen@xxxxxx>
---
Changelog:
v3: modify printed message by suggestion from Mariusz.
v2: add CC to Jes, and fix typo.
v1: the original version.
Monitor.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/Monitor.c b/Monitor.c
index f541229..839ec78 100644
--- a/Monitor.c
+++ b/Monitor.c
@@ -258,6 +258,7 @@ int Monitor(struct mddev_dev *devlist,
if (oneshot)
break;
else if (!anyredundant) {
+ pr_err("No array with redundancy detected, stopping\n");
break;
}
else {