DM_UDEV_DISABLE_OTHER_RULES_FLAG and DM_NOSCAN may be already set from previous rules, e.g. if the device is suspended. Make sure we don't overwrite them. DM_DISABLE_OTHER_RULES_FLAG_OLD and MPATH_DEVICE_READY are only used in this file, and not used in the scan_import code path. Signed-off-by: Martin Wilck <mwilck@xxxxxxxx> --- multipath/11-dm-mpath.rules | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/multipath/11-dm-mpath.rules b/multipath/11-dm-mpath.rules index c339f52..2c4d006 100644 --- a/multipath/11-dm-mpath.rules +++ b/multipath/11-dm-mpath.rules @@ -2,12 +2,19 @@ ACTION!="add|change", GOTO="mpath_end" ENV{DM_UDEV_RULES_VSN}!="?*", GOTO="mpath_end" ENV{DM_UUID}!="mpath-?*", GOTO="mpath_end" -IMPORT{db}="DM_DISABLE_OTHER_RULES_FLAG_OLD" -IMPORT{db}="MPATH_DEVICE_READY" - # If this uevent didn't come from dm, don't try to update the # device state -ENV{DM_COOKIE}!="?*", ENV{DM_ACTION}!="PATH_*", IMPORT{db}="DM_UDEV_DISABLE_OTHER_RULES_FLAG", IMPORT{db}="DM_NOSCAN", GOTO="scan_import" +ENV{DM_COOKIE}=="?*", GOTO="check_ready" +ENV{DM_ACTION}=="PATH_*", GOTO="check_ready" + +ENV{DM_UDEV_DISABLE_OTHER_RULES_FLAG}!="?*", IMPORT{db}="DM_UDEV_DISABLE_OTHER_RULES_FLAG" +ENV{DM_NOSCAN}!="?*", IMPORT{db}="DM_NOSCAN" +GOTO="scan_import" + +LABEL="check_ready" + +IMPORT{db}="DM_DISABLE_OTHER_RULES_FLAG_OLD" +IMPORT{db}="MPATH_DEVICE_READY" ENV{.MPATH_DEVICE_READY_OLD}="$env{MPATH_DEVICE_READY}" -- 2.43.0