[PATCH 03/13] libmultipath: don't set need_reload in adopt_paths

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

 



adopt_paths() is generally called when you are planning on creating or
reloading a multipath device. The only time when adopt_paths() is called
and mpp->action isn't explicitly set to ACT_CREATE or ACT_RELOAD
afterwards is when it is called by coalesce_paths() ->
add_map_with_path(). But in this case, you will only set need_reload if
the path that is being adopted isn't already part of the device. Because
of that, the new device that's being assembled in coalesce_paths() must
be different from the existing device (it has a path that isn't in the
existing device), so select_action() will select ACT_RELOAD, regardless
of the need_reload state. This makes intuitive sense. When multipath
adopts a new path, it should reload the device to actually add that path
to the device.

Signed-off-by: Benjamin Marzinski <bmarzins@xxxxxxxxxx>
---
 libmultipath/structs_vec.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/libmultipath/structs_vec.c b/libmultipath/structs_vec.c
index f5860499..47fc7cf3 100644
--- a/libmultipath/structs_vec.c
+++ b/libmultipath/structs_vec.c
@@ -349,7 +349,7 @@ int adopt_paths(vector pathvec, struct multipath *mpp,
 				 */
 				if (!current_mpp ||
 				    !mp_find_path_by_devt(current_mpp, pp->dev_t))
-					mpp->need_reload = set_path_max_sectors_kb(pp, mpp->max_sectors_kb) || mpp->need_reload;
+					set_path_max_sectors_kb(pp, mpp->max_sectors_kb);
 			}
 
 			pp->mpp = mpp;
-- 
2.46.2





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

  Powered by Linux