Re: [PATCH v2 6/7] 11-dm-mpath.rules: Don't force activation while device is suspended

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

 



On Sat, Feb 10, 2024 at 12:27:34AM +0100, Martin Wilck wrote:
> If paths become available while the device is suspended, don't
> activate. Another uevent will arrive when the device is resumed.
> 
> Signed-off-by: Martin Wilck <mwilck@xxxxxxxx>
Reviewed-by: Benjamin Marzinski <bmarzins@xxxxxxxxxx>
> ---
>  multipath/11-dm-mpath.rules.in | 12 +++++++++---
>  1 file changed, 9 insertions(+), 3 deletions(-)
> 
> diff --git a/multipath/11-dm-mpath.rules.in b/multipath/11-dm-mpath.rules.in
> index 8e8741a..4141833 100644
> --- a/multipath/11-dm-mpath.rules.in
> +++ b/multipath/11-dm-mpath.rules.in
> @@ -92,10 +92,16 @@ ENV{MPATH_DEVICE_READY}=="0", ENV{DM_NOSCAN}="1"
>  ENV{MPATH_DEVICE_READY}=="0", \
>  	ENV{.MPATH_SAVE_DISABLE_OTHER_RULES_FLAG}="$env{DM_UDEV_DISABLE_OTHER_RULES_FLAG}", \
>  	ENV{DM_UDEV_DISABLE_OTHER_RULES_FLAG}="1"
> +
>  # If the device comes back online, set DM_ACTIVATION so that
> -# upper layers do a rescan.
> -ENV{MPATH_DEVICE_READY}!="0", ENV{.MPATH_DEVICE_READY_OLD}=="0", \
> -	ENV{DM_ACTIVATION}="1", ENV{MPATH_UNCHANGED}="0"
> +# upper layers do a rescan. If the device is currently suspended,
> +# we have to postpone the activation until the next event.
> +ENV{MPATH_DEVICE_READY}=="0", GOTO="dont_activate"
> +ENV{.MPATH_DEVICE_READY_OLD}!="0", GOTO="dont_activate"
> +ENV{DM_SUSPENDED}==1, ENV{MPATH_DEVICE_READY}="0", GOTO="dont_activate"
> +
> +ENV{DM_ACTIVATION}="1", ENV{MPATH_UNCHANGED}="0"
> +LABEL="dont_activate"
>  
>  # The code to check multipath state ends here. We need to set
>  # properties and symlinks regardless whether the map is usable or
> -- 
> 2.43.0





[Index of Archives]     [Gluster Users]     [Kernel Development]     [Linux Clusters]     [Device Mapper]     [Security]     [Bugtraq]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]

  Powered by Linux