[dm-devel] [PATCH] multipath-tools: support for coalescing heterogenous paths

Martin Wilck mwilck at suse.com
Mon Sep 4 21:09:48 UTC 2017


On Sat, 2017-09-02 at 14:43 +0800, Guan Junxiong wrote:
> On 2017/8/22 22:21, Guan Junxiong wrote:
> > Hi, guys,
> > 
> > Any comments about this patch?
> > 
> > IMO, this feature of coalescing heterogenous paths without
> > interrupting
> > uplayer transaction is worthy to integrate into multipath-tools.
> > Please
> > consider about it.
> > 
> > I am glad to see if there is anything which can be improve for this
> > patch.

I admit I haven't looked into the details this time. But I spoke with
Hannes about it, and we agreed that this is not something we would like
to see in upstream multipath-tools. multipath is taking efforts to make
sure that we do *not* coalesce any devices that aren't actually paths
to the same disk. Your patch is trying to do the opposite.

AFAICS this is a special feature provided by certain storage arrays
from Huawei. It doesn't work at all without the storage array being
properly configured to take appropriate action to keep the
"heterogeneous paths" in sync. We think support for this belongs into
Huawei software for the time being. If this feature becomes
standardized in the future, and if the OS has some reliable,
standardized means to detect this feature in the array, it might be a
different issue. But even then, we'd need to use extreme caution not to
corrupt our users' data.

This is Hannes' and my opinion, others feel free to speak up if you
disagree.

Martin

> > 
> > Thanks
> > Guan Junxiong
> > 
> > 
> > On 2017/8/17 16:15, Guan Junxiong wrote:
> > > This patch supports coalescing heterogenous paths by using
> > > udev rules files. This is useful in the scenario of migrating
> > > data for heterogenous arrays without interrupting uplayer
> > > transaction. The udev rules file, which is located in the
> > > /etc/udev/rules.d/ directory, is automatically generated by
> > > multipath with new options -m and -n.
> > > 
> > > For example:
> > > multipath -m dm-0 -n  1000036006016028
> > > 
> > > The geneated udev rules is as follows:
> > > KERNEL=="sd*[!0-9]|nvme*[0-9]n*[0-9]", ENV{DEVTYPE}=="disk",
> > > ENV{ID_SERIAL}=="1000036006016028", ENV{ID_SERIAL}="36006016-
> > > 028f03600588db521dc7ce71"
> > > 
> > > KERNEL=="sd*[!0-9]|nvme*[0-9]n*[0-9]", ENV{DEVTYPE}=="disk",
> > > ENV{ID_WWN}=="1000036006016028", ENV{ID_WWN}="36006016028f036-
> > > 00588db521dc7ce71"
> > > 
> > > KERNEL=="sd*[!0-9]|nvme*[0-9]n*[0-9]", ENV{DEVTYPE}=="disk",
> > > ENV{ID_UUID}=="1000036006016028", ENV{ID_UUID}="36006016028f03-
> > > 600588db521dc7ce71"
> > > 
> > > Signed-off-by: Junxiong Guan <guanjunxiong at huawei.com>
> > > ---
> > >  libmultipath/Makefile   |   3 +-
> > >  libmultipath/config.h   |   1 +
> > >  libmultipath/udevrule.c | 191
> > > ++++++++++++++++++++++++++++++++++++++++++++++++
> > >  libmultipath/udevrule.h |  13 ++++
> > >  multipath/main.c        |  29 +++++++-
> > >  multipath/multipath.8   |  12 +++
> > >  6 files changed, 247 insertions(+), 2 deletions(-)
> > >  create mode 100644 libmultipath/udevrule.c
> > >  create mode 100644 libmultipath/udevrule.h
> 
> --
> dm-devel mailing list
> dm-devel at redhat.com
> https://www.redhat.com/mailman/listinfo/dm-devel

-- 
Dr. Martin Wilck <mwilck at suse.com>, Tel. +49 (0)911 74053 2107
SUSE Linux GmbH, GF: Felix Imendörffer, Jane Smithard, Graham Norton
HRB 21284 (AG Nürnberg)




More information about the dm-devel mailing list