diff mbox series

[v2,01/11] 11-dm-mpath.rules: explain logic for device becoming ready while suspended

Message ID 20240404173814.3143-2-mwilck@suse.com (mailing list archive)
State Not Applicable, archived
Delegated to: christophe varoqui
Headers show
Series multipath udev rules changes for dm rules V3 | expand

Commit Message

Martin Wilck April 4, 2024, 5:38 p.m. UTC
Add a comment to explain why we must set MPATH_DEVICE_READY=0 when
we see a device becoming ready (number of active paths 0 -> 1) while
the device is suspended.

Signed-off-by: Martin Wilck <mwilck@suse.com>
---
 multipath/11-dm-mpath.rules.in | 2 ++
 1 file changed, 2 insertions(+)

Comments

Benjamin Marzinski April 8, 2024, 6:01 p.m. UTC | #1
On Thu, Apr 04, 2024 at 07:38:04PM +0200, Martin Wilck wrote:
> Add a comment to explain why we must set MPATH_DEVICE_READY=0 when
> we see a device becoming ready (number of active paths 0 -> 1) while
> the device is suspended.
> 
> Signed-off-by: Martin Wilck <mwilck@suse.com>
Reviewed-by: Benjamin Marzinski <bmarzins@redhat.com>
> ---
>  multipath/11-dm-mpath.rules.in | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/multipath/11-dm-mpath.rules.in b/multipath/11-dm-mpath.rules.in
> index d9585ab..b8d19d0 100644
> --- a/multipath/11-dm-mpath.rules.in
> +++ b/multipath/11-dm-mpath.rules.in
> @@ -98,6 +98,8 @@ ENV{MPATH_DEVICE_READY}=="0", \
>  # If the device comes back online, set DM_ACTIVATION so that
>  # upper layers do a rescan. If the device is currently suspended,
>  # we have to postpone the activation until the next event.
> +# In this case, we have to set MPATH_DEVICE_READY=0; otherwise, the
> +# MPATH_UNCHANGED logic will cause later rules to skipped in 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"
> -- 
> 2.44.0
diff mbox series

Patch

diff --git a/multipath/11-dm-mpath.rules.in b/multipath/11-dm-mpath.rules.in
index d9585ab..b8d19d0 100644
--- a/multipath/11-dm-mpath.rules.in
+++ b/multipath/11-dm-mpath.rules.in
@@ -98,6 +98,8 @@  ENV{MPATH_DEVICE_READY}=="0", \
 # If the device comes back online, set DM_ACTIVATION so that
 # upper layers do a rescan. If the device is currently suspended,
 # we have to postpone the activation until the next event.
+# In this case, we have to set MPATH_DEVICE_READY=0; otherwise, the
+# MPATH_UNCHANGED logic will cause later rules to skipped in 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"