All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] Mdmonitor: Omit non-md devices
@ 2022-09-22  6:29 Lukasz Florczak
  2022-09-29 15:12 ` Jes Sorensen
  0 siblings, 1 reply; 2+ messages in thread
From: Lukasz Florczak @ 2022-09-22  6:29 UTC (permalink / raw)
  To: linux-raid; +Cc: jes, colyli

Fix segfault commit [1] introduced check whether given device is
mddevice, but it happend to terminate Mdmonitor if at least one of given
devices didn't fulfill that condition. In result Mdmonitor service was
no longer started on boot (with --scan option) when config contained some
non-existent array entry.

This commit introduces ommiting non-md devices so scan option can still
be used when config is wrong and allow Mdmonitor service to run on boot.

Giving a list of devices to monitor containing non-existing or
non-md devices will result in monitoring only confirmed mddevices.

[1] https://git.kernel.org/pub/scm/utils/mdadm/mdadm.git/commit/?id=e702f392959d1c2ad2089e595b52235ed97b4e18

Signed-off-by: Lukasz Florczak <lukasz.florczak@linux.intel.com>
---
 Monitor.c | 12 ++++--------
 1 file changed, 4 insertions(+), 8 deletions(-)

diff --git a/Monitor.c b/Monitor.c
index b4e954c6..7d7dc4d2 100644
--- a/Monitor.c
+++ b/Monitor.c
@@ -185,10 +185,8 @@ int Monitor(struct mddev_dev *devlist,
 				continue;
 			if (strcasecmp(mdlist->devname, "<ignore>") == 0)
 				continue;
-			if (!is_mddev(mdlist->devname)) {
-				free_statelist(statelist);
-				return 1;
-			}
+			if (!is_mddev(mdlist->devname))
+				continue;
 
 			st = xcalloc(1, sizeof *st);
 			snprintf(st->devname, MD_NAME_MAX + sizeof("/dev/md/"),
@@ -208,10 +206,8 @@ int Monitor(struct mddev_dev *devlist,
 		for (dv = devlist; dv; dv = dv->next) {
 			struct state *st;
 
-			if (!is_mddev(dv->devname)) {
-				free_statelist(statelist);
-				return 1;
-			}
+			if (!is_mddev(dv->devname))
+				continue;
 
 			st = xcalloc(1, sizeof *st);
 			mdlist = conf_get_ident(dv->devname);
-- 
2.26.2


^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH] Mdmonitor: Omit non-md devices
  2022-09-22  6:29 [PATCH] Mdmonitor: Omit non-md devices Lukasz Florczak
@ 2022-09-29 15:12 ` Jes Sorensen
  0 siblings, 0 replies; 2+ messages in thread
From: Jes Sorensen @ 2022-09-29 15:12 UTC (permalink / raw)
  To: Lukasz Florczak, linux-raid; +Cc: colyli

On 9/22/22 02:29, Lukasz Florczak wrote:
> Fix segfault commit [1] introduced check whether given device is
> mddevice, but it happend to terminate Mdmonitor if at least one of given
> devices didn't fulfill that condition. In result Mdmonitor service was
> no longer started on boot (with --scan option) when config contained some
> non-existent array entry.
> 
> This commit introduces ommiting non-md devices so scan option can still
> be used when config is wrong and allow Mdmonitor service to run on boot.
> 
> Giving a list of devices to monitor containing non-existing or
> non-md devices will result in monitoring only confirmed mddevices.
> 
> [1] https://git.kernel.org/pub/scm/utils/mdadm/mdadm.git/commit/?id=e702f392959d1c2ad2089e595b52235ed97b4e18
> 
> Signed-off-by: Lukasz Florczak <lukasz.florczak@linux.intel.com>

Applied!

Thanks,
Jes



^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2022-09-29 15:12 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-09-22  6:29 [PATCH] Mdmonitor: Omit non-md devices Lukasz Florczak
2022-09-29 15:12 ` Jes Sorensen

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.