[dm-devel] multipath-tools 0.7.3

2017-09-20 Thread Christophe Varoqui
Arnon Yaari (1): libmultipath: update INFINIDAT builtin config Benjamin Marzinski (5): libmultipath: pull functions into util.c libmultipath: change reservation_key to a be64 libmpathpersist: fix update_prflag code multipath: add alternate reservation_key method

Re: [dm-devel] multipath-tools 0.7.3

2017-09-20 Thread Christophe Varoqui
Oops, the shortlog was truncated. Here it is again: Arnon Yaari (1): libmultipath: update INFINIDAT builtin config Benjamin Marzinski (5): libmultipath: pull functions into util.c libmultipath: change reservation_key to a be64 libmpathpersist: fix update_prflag code

[dm-devel] [PATCH] dm-mpath: Improve handling of busy paths

2017-09-20 Thread Bart Van Assche
Instead of retrying request allocation after a delay if a path is busy, wait until the underlying path has completed a request. This patch avoids that submission of requests to busy paths is delayed and hence creates more opportunities for merging sequential I/O requests. Reported-by: Ming Lei

[dm-devel] [PATCH v3 1/6] libmultipath: pull functions into util.c

2017-09-20 Thread Benjamin Marzinski
This patch just pulls safe_write out of rbd. and the persistent reservation key parsing code out of dict.c and puts them in util.c, so that other functions can make use of them. Signed-off-by: Benjamin Marzinski --- libmultipath/checkers/rbd.c | 16 +---

[dm-devel] [PATCH v3 3/6] libmpathpersist: fix update_prflag code

2017-09-20 Thread Benjamin Marzinski
There are multiple problems with the prflag code. First, it doesn't do anything useful at all currently. update_prflags is called with "set" and "unset" instead of "setprstatus" and "unsetprstatus", so it doesn't actually enable persistent reservation tracking in multipathd when a key is

[dm-devel] [PATCH v3 2/6] libmultipath: change reservation_key to a be64

2017-09-20 Thread Benjamin Marzinski
The reservation key is currently being stored as any array of 8 unsigned chars. This is exactly the same in-memory representation as a big endian 64 bit integer. However, the code for dealing with a big endian 64 bit integer is much simpler, so switch to use that instead. Instead of directly

[dm-devel] [PATCH v3 6/6] multipath: add man page info for my prkey changes

2017-09-20 Thread Benjamin Marzinski
Update the man pages to list the new configuration options and multipathd commands. Signed-off-by: Benjamin Marzinski --- multipath/multipath.conf.5 | 17 + multipathd/multipathd.8| 16 2 files changed, 33 insertions(+) diff --git

[dm-devel] [PATCH v3 4/6] multipath: add alternate reservation_key method

2017-09-20 Thread Benjamin Marzinski
The scsi persistent reservation API doesn't force devices to implement any method to display the mapping from a reservation key to an I_T Nexus (the READ_FULL_STATUS action is an optional later addition, and a number of devices don't support it). To allow multipathd to determine the correct

Re: [dm-devel] dm-mpath: Improve handling of busy paths

2017-09-20 Thread Bart Van Assche
On Wed, 2017-09-20 at 14:56 -0400, Mike Snitzer wrote: > On Wed, Sep 20 2017 at 2:12pm -0400, > Bart Van Assche wrote: > > bdev = pgpath->path.dev->bdev; > > q = bdev_get_queue(bdev); > > - clone = blk_get_request(q, rq->cmd_flags | REQ_NOMERGE, GFP_ATOMIC); > >

Re: [dm-devel] dm-mpath: Improve handling of busy paths

2017-09-20 Thread Mike Snitzer
On Wed, Sep 20 2017 at 2:12pm -0400, Bart Van Assche wrote: > Instead of retrying request allocation after a delay if a path is > busy, wait until the underlying path has completed a request. This > patch avoids that submission of requests to busy paths is delayed and >

Re: [dm-devel] [PATCH] libmultipath: sanitize fd handling

2017-09-20 Thread Martin Wilck
On Wed, 2017-09-20 at 13:32 +0200, Martin Wilck wrote: > On Fri, 2017-09-15 at 08:15 +0200, Hannes Reinecke wrote: > > > > Signed-off-by: Hannes Reinecke > > --- > > libmultipath/checkers.c | 4 ++-- > > libmultipath/print.c| 2 +- > > 2 files changed, 3 insertions(+), 3

[dm-devel] [PATCH v3 5/6] mpathpersist: add support for prkeys file

2017-09-20 Thread Benjamin Marzinski
When the reservation_key is set to "file", the reservation key needs to be added to the prkeys file for multipathd to be able to register new paths as they are added to the device. This patch adds support to the mpathpersist command to message multipathd when a key is registered or unregistered

[dm-devel] [PATCH v3 0/6] multipath: alternative reservation_key method

2017-09-20 Thread Benjamin Marzinski
The scsi persistent reservation API doesn't force devices to implement any method to display the mapping from a reservation key to an I_T Nexus (the READ_FULL_STATUS action is an optional later addition, and a number of devices don't support it). To allow multipathd to determine the correct

[dm-devel] [PATCH] multipathd: fix build without systemd

2017-09-20 Thread Michael Lass
do_sd_notify contains a call to sd_notify which is unknown if USE_SYSTEMD is undefined. In this case, do_sd_notify is never called anyway, so embed the entire function into an #ifdef USE_SYSTEMD. This fixes a regression introduced in 88ddca5. Signed-off-by: Michael Lass ---

Re: [dm-devel] [PATCH] dm-mpath: Improve handling of busy paths

2017-09-20 Thread Ming Lei
On Wed, Sep 20, 2017 at 11:26:09PM +, Bart Van Assche wrote: > On Thu, 2017-09-21 at 06:36 +0800, Ming Lei wrote: > > Actually with GFP_ATOMIC, dispatch in dm-rq can't move on and no request > > will be dequeued from IO scheduler queue if this allocation fails, that > > means IO merge is still

Re: [dm-devel] [PATCH] libmultipath: sanitize fd handling

2017-09-20 Thread Martin Wilck
On Fri, 2017-09-15 at 08:15 +0200, Hannes Reinecke wrote: > One should remember that '0' _is_ a valid fd, so we need to set > the fd to '-1' upon allocating the path structure and ensure we're > checking for a value _smaller_ than 0 to detect an invalid fd. > > > diff --git

Re: [dm-devel] tests for new dm event code

2017-09-20 Thread Mikulas Patocka
On Thu, 14 Sep 2017, Brassow Jonathan wrote: > Mikulas, > > Do you have any tests for the new dm event code you added a while back? > (https://bugzilla.redhat.com/show_bug.cgi?id=1475380#c3) I?d like to > give QA instructions for how to perform regression testing on it so we > can get

Re: [dm-devel] libmultipath: add pthread_cleanup hook for udev monitor

2017-09-20 Thread Martin Wilck
On Fri, 2017-09-15 at 08:14 +0200, Hannes Reinecke wrote: > The udev monitor from uevent_listen() needs to be cleaned up from > a pthread cleanup hook. > Valgrind complained here. > > Signed-off-by: Hannes Reinecke Reviewed-by: Martin Wilck -- Dr. Martin Wilck

Re: [dm-devel] [PATCH V4 1/2] multipath-tools: intermittent IO error accounting to improve reliability

2017-09-20 Thread Muneendra Kumar M
Hi Guan, >>>Shall we use existing PATH_SHAKY ? As the path_shaky Indicates path not available for "normal" operations we can use this state. That's a good idea. Regarding the marginal paths below is my explanation. And brocade is publishing couple of white papers regarding the same to educate