Re: [PATCH 15/15] multipathd: fix deferred_failback_tick for reload removes

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, 2024-08-28 at 18:17 -0400, Benjamin Marzinski wrote:
> If reload_and_sync_map() removes the multipath device,
> deferred_failback_tick() needs to decrement the counter so that it
> doesn't skip the following device.
> 
> Signed-off-by: Benjamin Marzinski <bmarzins@xxxxxxxxxx>

One day we should add symbolic return values for reload_and_sync_map().

Other than that:

Reviewed-by: Martin Wilck <mwilck@xxxxxxxx>

> ---
>  multipathd/main.c | 9 ++++++---
>  1 file changed, 6 insertions(+), 3 deletions(-)
> 
> diff --git a/multipathd/main.c b/multipathd/main.c
> index f9b0ebaf..9e930b53 100644
> --- a/multipathd/main.c
> +++ b/multipathd/main.c
> @@ -2098,9 +2098,12 @@ deferred_failback_tick (struct vectors *vecs)
>  
>  			if (!mpp->failback_tick &&
>  			    need_switch_pathgroup(mpp,
> &need_reload)) {
> -				if (need_reload)
> -					reload_and_sync_map(mpp,
> vecs);
> -				else
> +				if (need_reload) {
> +					if (reload_and_sync_map(mpp,
> vecs) == 2) {
> +						/* multipath device
> removed */
> +						i--;
> +					}
> +				} else
>  					switch_pathgroup(mpp);
>  			}
>  		}








[Index of Archives]     [DM Crypt]     [Fedora Desktop]     [ATA RAID]     [Fedora Marketing]     [Fedora Packaging]     [Fedora SELinux]     [Yosemite Discussion]     [KDE Users]     [Fedora Docs]

  Powered by Linux