On Tue, 2023-12-19 at 17:51 -0500, Benjamin Marzinski wrote:
> This patchset combines my patch to disable queueing in
> set_no_path_retry
> when recovery mode has timed out with my pathset to cleanup the
> interactive commands. This has been significantly changed in v3
>
> Differences from v2 (based on suggestions by Martin Wilck):
> 0001: This completely new patch that Martin suggested. Martin, I've
> made you the Author. Feel free to change my commit message if
> you'd like.
> 0002: This is similar to patch 0001 from v2, except the rational has
> changed. It is still possible to get in a situation where a
> multipath device is queueing after timeout out in recovery, so
> we
> still need to handle this. Since we won't have to worry about
> multipathd flip-flopping the queueing state on reloads, I
> pulled
> this check outside the PATH_PENDING check, as Martin suggested.
> 0003: This is the same as patches 0002-0004 from v2. It made no sense
> to merge 0002 and 0004 but not 0003. In would just result in
> making changes only to undo them in the next patch.
> 0004: This is instead of my 0005 patch from v2. In order for
> disabling and restoring queuing to always work correctly,
> multipathd needs to track the current queueing state.
> 0005: This is a new patch based on some of Martin's comments on
> v2 patch 0005.
>
> Differences from v1 (based on suggestions by Martin Wilck):
> 0001: added comments explaining why cleaning up the queueing state is
> unnecessary in update_queue_mode_{add|del}_path().
> patches 0002-0005 were previously 0001-0004
>
> Benjamin Marzinski (4):
> multipathd: Make sure to disable queueing if recovery has failed.
> multipathd: don't modify the multipath device on show commands
> libmultipath: keep track of queueing state in features
> multipathd: only restore queueing if it has been disabled first
>
> Martin Wilck (1):
> libmultipath: avoid temporarily enabling queueing on reload
>
> libmultipath/configure.c | 4 +--
> libmultipath/devmapper.c | 23 +++++++++++++++---
> libmultipath/devmapper.h | 2 +-
> libmultipath/dmparser.c | 14 +++++++++--
> libmultipath/structs_vec.c | 34 +++++++++++++++++++++-----
> multipathd/cli_handlers.c | 50 +++++++++++++++++-------------------
> --
> multipathd/dmevents.c | 2 +-
> multipathd/main.c | 33 +++++++++++++------------
> multipathd/main.h | 7 +++---
> multipathd/multipathd.8.in | 12 +++++++--
> multipathd/waiter.c | 2 +-
> 11 files changed, 116 insertions(+), 67 deletions(-)
>
For the set:
Reviewed-by: Martin Wilck <[email protected]>