All of lore.kernel.org
 help / color / mirror / Atom feed
From: mwilck@suse.com
To: Christophe Varoqui <christophe.varoqui@opensvc.com>,
	Benjamin Marzinski <bmarzins@redhat.com>,
	Guozhonghua <guozh88@chinatelecom.cn>
Cc: dm-devel@redhat.com, Martin Wilck <mwilck@suse.com>
Subject: [dm-devel] [PATCH v2 00/11] multipathd: fix __delayed_reconfig logic
Date: Fri, 18 Mar 2022 23:33:28 +0100	[thread overview]
Message-ID: <20220318223339.4226-1-mwilck@suse.com> (raw)

From: Martin Wilck <mwilck@suse.com>

Hi Ben, hi Christophe, hi Guozhonghua,

here's my new take at the race condition issue reported by Guozhonghua.
This patch set is meant as an alternative to Ben's recent series
"fix looping when reconfigure is delayed". I believe that by removing
the special case from __post_config_state(), the state change logic
becomes somewhat easier to understand again.

I hope I got it right this time.

Changes v1->v2:

 04: reset __delayed_reconfig if no delay needed (Ben)
     only call __post_config_state in IDLE state (Ben)
 06/07: unblock reconfigure if maps are removed, as suggested by Ben
 08-11: minor logging fixes I found useful

Regards
Martin

Martin Wilck (11):
  multipathd: child(): remove superfluous if condition
  multipathd: set reload_type in when calling reconfigure()
  multipathd: avoid busy loop in child() for delayed reconfigure
  multipathd: reset __delayed_reconfig from ev_add_map()
  multipathd: remove volatile qualifier from running_state
  libmultipath: add callback for remove_map()
  multipathd: use remove_map_callback for delayed reconfigure
  libmultipath: warn only once about deprecated options
  multipathd: improve logging of reconfigure()
  multipathd: log state changes
  multipathd: remove unhelpful startup / shutdown messages

 libmultipath/dict.c               |  15 ++-
 libmultipath/libmultipath.version |   3 +-
 libmultipath/structs_vec.c        |   6 ++
 multipathd/main.c                 | 172 ++++++++++++++++--------------
 4 files changed, 109 insertions(+), 87 deletions(-)

-- 
2.35.1

--
dm-devel mailing list
dm-devel@redhat.com
https://listman.redhat.com/mailman/listinfo/dm-devel


             reply	other threads:[~2022-03-18 22:34 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-03-18 22:33 mwilck [this message]
2022-03-18 22:33 ` [dm-devel] [PATCH v2 01/11] multipathd: child(): remove superfluous if condition mwilck
2022-03-22  0:18   ` Benjamin Marzinski
2022-03-18 22:33 ` [dm-devel] [PATCH v2 02/11] multipathd: set reload_type in when calling reconfigure() mwilck
2022-03-18 22:33 ` [dm-devel] [PATCH v2 03/11] multipathd: avoid busy loop in child() for delayed reconfigure mwilck
2022-03-22  0:19   ` Benjamin Marzinski
2022-03-18 22:33 ` [dm-devel] [PATCH v2 04/11] multipathd: reset __delayed_reconfig from ev_add_map() mwilck
2022-03-22  0:21   ` Benjamin Marzinski
2022-03-18 22:33 ` [dm-devel] [PATCH v2 05/11] multipathd: remove volatile qualifier from running_state mwilck
2022-03-22  0:23   ` Benjamin Marzinski
2022-03-18 22:33 ` [dm-devel] [PATCH v2 06/11] libmultipath: add callback for remove_map() mwilck
2022-03-22  0:28   ` Benjamin Marzinski
2022-03-22  8:35     ` Martin Wilck
2022-03-22 14:59       ` Benjamin Marzinski
2022-03-22 16:37         ` Martin Wilck
2022-03-18 22:33 ` [dm-devel] [PATCH v2 07/11] multipathd: use remove_map_callback for delayed reconfigure mwilck
2022-03-22  0:34   ` Benjamin Marzinski
2022-03-22  9:08     ` Martin Wilck
2022-03-22 15:36       ` Benjamin Marzinski
2022-03-18 22:33 ` [dm-devel] [PATCH v2 08/11] libmultipath: warn only once about deprecated options mwilck
2022-03-22  0:34   ` Benjamin Marzinski
2022-03-18 22:33 ` [dm-devel] [PATCH v2 09/11] multipathd: improve logging of reconfigure() mwilck
2022-03-22  0:35   ` Benjamin Marzinski
2022-03-18 22:33 ` [dm-devel] [PATCH v2 10/11] multipathd: log state changes mwilck
2022-03-22  0:37   ` Benjamin Marzinski
2022-03-18 22:33 ` [dm-devel] [PATCH v2 11/11] multipathd: remove unhelpful startup / shutdown messages mwilck
2022-03-22  0:43   ` Benjamin Marzinski
2022-03-22  9:30     ` Martin Wilck
2022-03-22 15:38       ` Benjamin Marzinski

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20220318223339.4226-1-mwilck@suse.com \
    --to=mwilck@suse.com \
    --cc=bmarzins@redhat.com \
    --cc=christophe.varoqui@opensvc.com \
    --cc=dm-devel@redhat.com \
    --cc=guozh88@chinatelecom.cn \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.