[dm-devel] [PATCH 01/21] libmultipath: sysfs_set_scsi_tmo: do nothing for ACT_DRY_RUN
Benjamin Marzinski
bmarzins at redhat.com
Wed Sep 6 22:42:07 UTC 2023
On Fri, Sep 01, 2023 at 08:02:14PM +0200, mwilck at suse.com wrote:
> From: Martin Wilck <mwilck at suse.com>
>
> "multipath -d" might change sysfs timeouts of SCSI devices.
> Make sure it doesn't.
>
Reviewed-by: Benjamin Marzinski <bmarzins at redhat.com>
> Signed-off-by: Martin Wilck <mwilck at suse.com>
> Cc: Jehan Singh <jehan.singh at suse.com>
> ---
> libmultipath/configure.c | 4 ++--
> libmultipath/discovery.c | 3 +++
> 2 files changed, 5 insertions(+), 2 deletions(-)
>
> diff --git a/libmultipath/configure.c b/libmultipath/configure.c
> index 9513baa..029fbbd 100644
> --- a/libmultipath/configure.c
> +++ b/libmultipath/configure.c
> @@ -1193,13 +1193,13 @@ int coalesce_paths (struct vectors *vecs, vector mpvec, char *refwwid,
>
> if (cmpp)
> mpp->queue_mode = cmpp->queue_mode;
> + if (cmd == CMD_DRY_RUN && mpp->action == ACT_UNDEF)
> + mpp->action = ACT_DRY_RUN;
> if (setup_map(mpp, ¶ms, vecs)) {
> remove_map(mpp, vecs->pathvec, NULL);
> continue;
> }
>
> - if (cmd == CMD_DRY_RUN)
> - mpp->action = ACT_DRY_RUN;
> if (mpp->action == ACT_UNDEF)
> select_action(mpp, curmp,
> force_reload == FORCE_RELOAD_YES ? 1 : 0);
> diff --git a/libmultipath/discovery.c b/libmultipath/discovery.c
> index e4de48e..84ce5fe 100644
> --- a/libmultipath/discovery.c
> +++ b/libmultipath/discovery.c
> @@ -857,6 +857,9 @@ sysfs_set_scsi_tmo (struct config *conf, struct multipath *mpp)
> bool warn_dev_loss = false;
> bool warn_fast_io_fail = false;
>
> + if (mpp->action == ACT_DRY_RUN || mpp->action == ACT_REJECT)
> + return 0;
> +
> if (mpp->no_path_retry > 0) {
> uint64_t no_path_retry_tmo =
> (uint64_t)mpp->no_path_retry * conf->checkint;
> --
> 2.41.0
More information about the dm-devel
mailing list