[dm-devel] [PATCH v5 20/22] multipath -u: test if path is busy

2018-04-13 Thread Martin Wilck
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 processing) may be unmounted by systemd, causing havoc to the boot process.

[dm-devel] [PATCH v5 15/22] libmultipath: implement find_multipaths_timeout

2018-04-13 Thread Martin Wilck
This makes the timeout for "find_multipaths smart" configurable. If the timeout has a negative value (default), it's applied only to "known" hardware which is either in the hwtable or in a "device" section in multipath.conf. For typical non-multipath hardware, which is not in the hwtable, a short

[dm-devel] [PATCH v5 22/22] multipath.rules: find_multipaths "smart" logic

2018-04-13 Thread Martin Wilck
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 releasing single paths to upper layers. These rules apply only if both

[dm-devel] [PATCH v5 21/22] libmultipath: enable find_multipaths "smart"

2018-04-13 Thread Martin Wilck
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. Rather, such paths are temporarily treated like multipath members. If no additional paths are detected after a certain time, the paths

[dm-devel] [PATCH v5 14/22] multipath -u: add DM_MULTIPATH_DEVICE_PATH=2 for "maybe"

2018-04-13 Thread Martin Wilck
Use DM_MULTIPATH_DEVICE_PATH="2" to indicate that this might be a valid path, but we aren't certain. This happens with find_multipaths "smart", when the first path to a device (or a single-path device) is encountered, and the device is neither blacklisted, nor marked failed, nor whitelisted in the

[dm-devel] [PATCH v5 04/22] multipath -u -i: respect entries in WWIDs file

2018-04-13 Thread Martin Wilck
Previously, if find_multipaths was set, devices listed in the WWIDs file weren't classified as multipath members by "multipath -u -i" unless they also met the "find_multipaths" criteria (at least two paths, or existing map with this WWID). Now we classify all paths in the WWIDs file as multipath

[dm-devel] [PATCH v5 12/22] multipath -u: change output to environment/key format

2018-04-13 Thread Martin Wilck
... instead of free format. This provides more flexibility for udev rule processing for the future. Adapt code in multipath.rules. The exit status remains as usual. This affects "multipath -c", too. The parameters "pathvec" and "conf" for print_cmd_valid are currently unused, but will be in

[dm-devel] [PATCH v5 02/22] Revert "multipathd: imply -n if find_multipaths is set"

2018-04-13 Thread Martin Wilck
This reverts commit 64e27ec066a001012f44550f095c93443e91d845. Reviewed-by: Benjamin Marzinski Signed-off-by: Martin Wilck --- multipathd/main.c | 4 1 file changed, 4 deletions(-) diff --git a/multipathd/main.c b/multipathd/main.c index

[dm-devel] [PATCH v5 09/22] libmultipath: functions to indicate mapping failure in /dev/shm

2018-04-13 Thread Martin Wilck
Create a simple API that indicates failure to create a map for a certain WWID. This will allow multipathd to indicate to other tools (in particular, "multipath -u" during udev processing) that an attempt to create a map for a certain wwid failed. The indicator is simply the existence of a file

[dm-devel] [PATCH v5 16/22] multipath -u : set FIND_MULTIPATHS_WAIT_UNTIL from /dev/shm

2018-04-13 Thread Martin Wilck
In "find_multipaths smart" mode, use time stamps under /dev/shm/multipath/find_multipaths to track waiting for multipath siblings. When a path is first encountered and is "maybe" multipath, create a file under /dev/shm, set its modification time to the expiry time of the timer, and set the

[dm-devel] [PATCH v5 10/22] libmultipath: indicate wwid failure in dm_addmap_create()

2018-04-13 Thread Martin Wilck
dm_addmap_create() is where we actually try to set up a new multipath map. Depending on the result, mark the wwid as failed (or not), and re-trigger an uevent if necessary. If a path changes from multipath to non-multipath, use an "add" event to make sure LVM2 rules pick it up. Increase log level

[dm-devel] [PATCH v5 11/22] multipath -u: common code path for result message

2018-04-13 Thread Martin Wilck
Print the result message in one place only. This simplifies future changes. multipath -c is also affected. Signed-off-by: Martin Wilck Reviewed-by: Benjamin Marzinski --- multipath/main.c | 32 +++- 1 file changed, 19

[dm-devel] [PATCH v5 05/22] libmultipath: trigger change uevent on new device creation

2018-04-13 Thread Martin Wilck
From: Benjamin Marzinski When multipath first sees a path device with find_multipaths enabled, it can't know if the device should be multipathed. This means that it will not claim the device in udev. If the device is eventually multipathed, multipath should trigger a change

[dm-devel] [PATCH v5 01/22] Revert "multipath: ignore -i if find_multipaths is set"

2018-04-13 Thread Martin Wilck
This reverts commit ffbb886a8a16cb063d669cd76a1e656fd3ec8c4b. Reviewed-by: Benjamin Marzinski Signed-off-by: Martin Wilck --- multipath/main.c | 10 -- 1 file changed, 10 deletions(-) diff --git a/multipath/main.c b/multipath/main.c index

[dm-devel] [PATCH v5 00/22] multipath path classification

2018-04-13 Thread Martin Wilck
Hello Christophe, (this set is based on 1cb704b2 plus those recent patches that have been positively reviewed, see https://github.com/openSUSE/multipath-tools/commits/upstream-queue). This patch set implements a new, improved path detection logic based on the previous discussions in the dm-devel

Re: [dm-devel] [PATCH v4 07/20] libmultipath: change find_multipaths option to multi-value

2018-04-13 Thread Martin Wilck
On Wed, 2018-04-04 at 18:16 +0200, Martin Wilck wrote: > diff --git a/libmultipath/wwids.c b/libmultipath/wwids.c > index 11afe09..da685be 100644 > --- a/libmultipath/wwids.c > +++ b/libmultipath/wwids.c > @@ -282,8 +282,12 @@ should_multipath(struct path *pp1, vector > pathvec, vector mpvec) >

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

2018-04-13 Thread Martin Wilck
On Fri, 2018-04-13 at 10:53 -0500, Benjamin Marzinski wrote: > On Fri, Apr 13, 2018 at 12:17:54AM +0200, Martin Wilck wrote: > > > > As I said already, I don't understand why you say that. > > > > I can assert that if is_failed_wwid() returns true, multipathd has > > definitely tried and failed

Re: [dm-devel] [PATCH v4 18/20] multipath -u: quick check if path is multipathed

2018-04-13 Thread Martin Wilck
On Fri, 2018-04-13 at 11:12 -0500, Benjamin Marzinski wrote: > On Fri, Apr 13, 2018 at 12:19:12AM +0200, Martin Wilck wrote: > > On Thu, 2018-04-12 at 13:46 -0500, Benjamin Marzinski wrote: > > > On Wed, Apr 04, 2018 at 06:16:25PM +0200, Martin Wilck wrote: > > > > With "find_multipaths smart", we

Re: [dm-devel] [PATCH] libmultipath: Fix logic in should_multipath

2018-04-13 Thread Benjamin Marzinski
On Fri, Apr 13, 2018 at 07:20:42PM +0200, Martin Wilck wrote: > Commit d3b71498 missed a negation. Oops. Thanks for the catch. Reviewed-by: Benjamin Marzinski > > Fixes: d3b71498 "multipath: fix rcu thread cancellation hang" > Signed-off-by: Martin Wilck

[dm-devel] [PATCH] libmultipath: Fix logic in should_multipath

2018-04-13 Thread Martin Wilck
Commit d3b71498 missed a negation. Fixes: d3b71498 "multipath: fix rcu thread cancellation hang" Signed-off-by: Martin Wilck --- libmultipath/wwids.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/libmultipath/wwids.c b/libmultipath/wwids.c index

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

2018-04-13 Thread Bart Van Assche
On Fri, 2018-04-13 at 18:17 +0200, Xose Vazquez Perez wrote: > +Licence Isn't the preferred spelling "License"? Thanks, Bart. -- dm-devel mailing list dm-devel@redhat.com https://www.redhat.com/mailman/listinfo/dm-devel

Re: [dm-devel] [PATCH v4 18/20] multipath -u: quick check if path is multipathed

2018-04-13 Thread Benjamin Marzinski
On Fri, Apr 13, 2018 at 12:19:12AM +0200, Martin Wilck wrote: > On Thu, 2018-04-12 at 13:46 -0500, Benjamin Marzinski wrote: > > On Wed, Apr 04, 2018 at 06:16:25PM +0200, Martin Wilck wrote: > > > With "find_multipaths smart", we accept paths as valid if they are > > > already part of a multipath

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

2018-04-13 Thread Benjamin Marzinski
On Thu, Apr 12, 2018 at 01:48:51PM -0500, Benjamin Marzinski wrote: > 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

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

2018-04-13 Thread Benjamin Marzinski
On Fri, Apr 13, 2018 at 12:27:29AM +0200, Martin Wilck wrote: > 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

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

2018-04-13 Thread Benjamin Marzinski
On Fri, Apr 13, 2018 at 12:17:54AM +0200, Martin Wilck wrote: > On Thu, 2018-04-12 at 13:41 -0500, Benjamin Marzinski wrote: > > 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

Re: [dm-devel] slab: introduce the flag SLAB_MINIMIZE_WASTE

2018-04-13 Thread Mike Snitzer
On Fri, Apr 13 2018 at 5:22am -0400, Vlastimil Babka wrote: > On 03/21/2018 07:36 PM, Mikulas Patocka wrote: > > > > > > On Wed, 21 Mar 2018, Christopher Lameter wrote: > > > >> On Wed, 21 Mar 2018, Mikulas Patocka wrote: > >> > You should not be using the slab

Re: [dm-devel] [PATCH] slab: introduce the flag SLAB_MINIMIZE_WASTE

2018-04-13 Thread Vlastimil Babka
On 03/21/2018 07:36 PM, Mikulas Patocka wrote: > > > On Wed, 21 Mar 2018, Christopher Lameter wrote: > >> On Wed, 21 Mar 2018, Mikulas Patocka wrote: >> You should not be using the slab allocators for these. Allocate higher order pages or numbers of consecutive smaller pagess from the

[dm-devel] multipathd will not set the iscsi session tmo after iscsi sesstion recovery

2018-04-13 Thread jianchao.wang
Hi Dear all Our customer complained that the iscsi session tmo parameters doesn't match with the multipath config. When the iscsi session fails and do the recovery, iscsid will set parameters again. But this will overwrite the ones which has been set by multipathd. And multipathd will not set