[dm-devel] [PATCH v5 03/22] libmultipath: should_multipath: keep existing maps

2018-04-15 Thread Martin Wilck
with find_multipaths "yes" and without the "-n" option to multipathd, if a path is already multipathed, keep it. The same logic is applied by "multipath -u -i". To do this, we need to add a "mpvec" parameter to should_multipath(). Reviewed-by: Benjamin Marzinski

[dm-devel] [PATCH v5 06/22] libmultipath: trigger path uevent only when necessary

2018-04-15 Thread Martin Wilck
Paths that are already classified as DM_MULTIPATH_DEVICE_PATH don't need to be retriggered. Reviewed-by: Benjamin Marzinski Signed-off-by: Martin Wilck --- libmultipath/configure.c | 12 1 file changed, 12 insertions(+) diff --git

[dm-devel] [PATCH v5 13/22] multipath -u: treat failed wwids as invalid

2018-04-15 Thread Martin Wilck
If a WWID has been marked as "failed", don't treat it as "valid multipath device path" in multipath -c/-u. This is key to achieve consistency between multipathd and udev rule processing. Signed-off-by: Martin Wilck Reviewed-by: Benjamin Marzinski ---

[dm-devel] [PATCH v5 19/22] multipath -u: don't grab devices already passed to system

2018-04-15 Thread Martin Wilck
Setting SYSTEMD_READY=0 on a device that has previously been passed to systemd is dangerous - already mounted file systems might be unmounted by systemd. Avoid that by checking for previously set DM_MULTIPATH_DEVICE_PATH environment variable. This requires to change the exit status of multipath

[dm-devel] [PATCH v5 07/22] libmultipath: change find_multipaths option to multi-value

2018-04-15 Thread Martin Wilck
Change the "find_multipaths" option from yes/no to multi-value. This option now covers the effects of "find_multipaths" as it used to be, plus the -i option to multipath (ignore_wwids) and the -n option to multipathd (ignore_new_devs), excluding such combinations of the former options that are

[dm-devel] [PATCH v5 08/22] libmultipath: use const char* in open_file()

2018-04-15 Thread Martin Wilck
Reviewed-by: Benjamin Marzinski Signed-off-by: Martin Wilck --- libmultipath/file.c | 6 +++--- libmultipath/file.h | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/libmultipath/file.c b/libmultipath/file.c index e4951c92..d5165ec6

[dm-devel] [PATCH v5 17/22] multipath -u: cleanup logic

2018-04-15 Thread Martin Wilck
The CMD_VALID_PATH logic is complex and hard to read and understand. This patch cleans it up a bit (preparing for folluw-up patches). It doesn't change any logic. Signed-off-by: Martin Wilck --- multipath/main.c | 12 +++- 1 file changed, 7 insertions(+), 5 deletions(-)

[dm-devel] [PATCH v5 18/22] multipath -u: quick check if path is multipathed

2018-04-15 Thread Martin Wilck
With "find_multipaths smart", we accept paths as valid if they are already part of a multipath map. This patch avoids doing a full path and device-mapper map scan for this case, speeding up "multipath -u" considerably. Signed-off-by: Martin Wilck Reviewed-by: Benjamin Marzinski

Re: [dm-devel] [PATCH ALT] multipath-tools: add licence info to README

2018-04-15 Thread Xose Vazquez Perez
On 04/13/2018 06:18 PM, Bart Van Assche wrote: > On Fri, 2018-04-13 at 18:17 +0200, Xose Vazquez Perez wrote: >> +Licence > > Isn't the preferred spelling "License"? https://en.oxforddictionaries.com/definition/licence licence (US license) Usage: Note that in British English licence is the

[dm-devel] [PATCH ALT] multipath-tools: add licence info to README

2018-04-15 Thread Xose Vazquez Perez
Alternative patch to [PATCH v2 2/2] multipath-tools: link LICENSES/LGPL-2.0 to LICENSE.default Cc: Hannes Reinecke Cc: Benjamin Marzinski Cc: Martin Wilck Cc: Bart Van Assche Cc: Gris Ge Cc:

Re: [dm-devel] [PATCH v4 19/20] libmultipath: enable find_multipaths "smart"

2018-04-15 Thread Martin Wilck
On Thu, 2018-04-12 at 13:47 -0500, Benjamin Marzinski wrote: > On Wed, Apr 04, 2018 at 06:16:26PM +0200, Martin Wilck wrote: > > This activates "smart" path detection. This is similar to > > "find_multipaths yes", but doesn't generally ignore single paths > > that are not listed in the WWIDs file.

Re: [dm-devel] [PATCH v2 2/2] multipath-tools: link LICENSES/LGPL-2.0 to LICENSE.default

2018-04-15 Thread Martin Wilck
On Thu, 2018-04-12 at 16:57 +0200, Xose Vazquez Perez wrote: > To indicate that the default licence is LGPL-2.0, > since there are still a lot of files without a licence header. > > Result: > multipath-tools/ > └── LICENSE.default -> LICENSES/LGPL-2.0 License.default is better than COPYING,

Re: [dm-devel] [PATCH v4 09/20] libmultipath: functions to indicate mapping failure in /dev/shm

2018-04-15 Thread Benjamin Marzinski
On Thu, Apr 12, 2018 at 10:07:13PM +0200, Martin Wilck wrote: > On Thu, 2018-04-12 at 13:33 -0500, Benjamin Marzinski wrote: > > On Wed, Apr 04, 2018 at 06:16:16PM +0200, Martin Wilck wrote: > > > Create a simple API that indicates failure to create a map for a > > > certain WWID. This will allow

Re: [dm-devel] [PATCH v4 20/20] multipath.rules: find_multipaths "smart" logic

2018-04-15 Thread Benjamin Marzinski
On Wed, Apr 04, 2018 at 06:16:27PM +0200, Martin Wilck wrote: > When the first path to a device appears, we don't know if more paths are going > to follow. find_multipath "smart" logic attempts to solve this dilemma by > waiting for additional paths for a configurable time before giving up > and

Re: [dm-devel] [PATCH 1/2] libmultipath: hwhandler auto-detection for ALUA

2018-04-15 Thread Benjamin Marzinski
On Thu, Apr 12, 2018 at 05:43:39PM +0200, Martin Wilck wrote: > Hi Ben, > > I'm unsure what to do. Do you still reject my patch? Or have you been > convinced by Hannes and my arguments? > Or are you requesting changes? If yes, what? I still feel that it's better to make the default config

Re: [dm-devel] [PATCH v3 17/20] multipath -u: test if path is busy

2018-04-15 Thread Benjamin Marzinski
On Mon, Apr 02, 2018 at 09:50:48PM +0200, Martin Wilck wrote: > For "find_multipaths smart", check if a path is already in use > before setting DM_MULTIPATH_DEVICE_PATH to 1 or 2 (and thus, > SYSTEMD_READY=0). If we don't do this, a device which has already been > mounted (e.g. during initrd