From: Hannes Reinecke <hare@suse.de>
To: Benjamin Marzinski <bmarzins@redhat.com>,
Christophe Varoqui <christophe.varoqui@opensvc.com>
Cc: device-mapper development <dm-devel@redhat.com>,
Mike Snitzer <snitzer@redhat.com>
Subject: Re: [PATCH 22/57] multipath: use option '-i' when called from udev
Date: Tue, 3 May 2016 16:39:54 +0200 [thread overview]
Message-ID: <5728B83A.3000006@suse.de> (raw)
In-Reply-To: <20160503141412.GA26117@octiron.msp.redhat.com>
On 05/03/2016 04:14 PM, Benjamin Marzinski wrote:
> On Tue, May 03, 2016 at 08:37:08AM +0200, Christophe Varoqui wrote:
>> Ben,
>> does this patch actually break the Red Hat integration ?
>> I'm inclined to merge it if not.
>
> Like we talked about earlier, RedHat uses a completely different
> multipath.rules file, which includes some command options that were
> NAK'ed for inclusion. We can sort that out. Either we will or we won't
> come to an agreement on how multipath should interact with udev. If we
> don't we can probably just keep different rules files for the different
> distributions. But having a mostly-but-not-quite working version of the
> SUSE rules file really benefits nobody. I'm in favor of this going it.
>
I've just send the rules file for completeness; I'm perfectly fine
with it not going in.
Or maybe having a 'multipath.rules.suse' and
'multipath.rules.redhat'; that way both rules are visible upstream
and people will know there's a difference.
Especially as we're already have RH and SUSE specific init files.
So there is a precedent.
As for systemd/udev integration itself:
For SUSE our setup is a follows:
1) We stick to the original concept of autoconfiguration, ie if
multipath/multipathd is started it will claim all devices. Any
device which should be omitted need to be blacklisted.
2) Corollary to the above: the /etc/multipath.wwids file is not
required to be present.
3) For udev integration we rely on 56-multipath.rules to set the
variable 'ENV{DM_MULTIPATH_DEVICE_PATH}="1"' if a device should be
handled by multipath; this rule also sets the 'SYSTEMD_READY=0'
variable to instruct systemd to skip this path.
This has the potential scalability issue that we need to call
'multipath' to set this variable. In our setup we call multipath
with '-u' to connect to multipathd; so if we run at a large system
the CLI interface might become overloaded.
I must admit I'm not overly happy with this design, so if anyone has
better ideas I'd be happy to accomodate it.
4) From 2) and 3) follows that we need to use the option '-i' in
56-multipath.rules to avoid failures during booting.
Seeing that there now is an option 'ignore_new_boot_devs' maybe we
can extend it to cover these differences, ie that for SUSE we will
always set this to '0', and for RedHat one would set it to '1' per
default. Alternatively we could add (yet another) configuration
variable, which could be used to switch between SUSE-style
autoconfiguration and RedHat-style wwid files.
Cheers,
Hannes
--
Dr. Hannes Reinecke Teamlead Storage & Networking
hare@suse.de +49 911 74053 688
SUSE LINUX GmbH, Maxfeldstr. 5, 90409 Nürnberg
GF: F. Imendörffer, J. Smithard, J. Guild, D. Upmanyu, G. Norton
HRB 21284 (AG Nürnberg)
next prev parent reply other threads:[~2016-05-03 14:39 UTC|newest]
Thread overview: 114+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-04-27 11:10 [PATCH 00/57] SLES resync Hannes Reinecke
2016-04-27 11:10 ` [PATCH 01/57] kpartx: Fixup persistent name generation Hannes Reinecke
2016-04-27 11:10 ` [PATCH 02/57] kpartx: handle more than 256 loop devices Hannes Reinecke
2016-04-27 11:10 ` [PATCH 03/57] kpartx: parse emulated DASD devices Hannes Reinecke
2016-04-27 11:10 ` [PATCH 04/57] kpartx: Install rules file with correct prefix Hannes Reinecke
2016-04-27 11:10 ` [PATCH 05/57] Add HP MSA 2040 to the hardware table Hannes Reinecke
2016-04-28 22:06 ` Sebastian Herbszt
2016-04-29 5:55 ` Hannes Reinecke
2016-05-01 21:30 ` Sebastian Herbszt
2016-06-09 14:20 ` Xose Vazquez Perez
2016-06-10 6:17 ` Hannes Reinecke
2016-06-10 14:30 ` Xose Vazquez Perez
2016-06-11 10:06 ` Hannes Reinecke
2016-04-27 11:10 ` [PATCH 06/57] Use ALUA for HP 3PAR Hannes Reinecke
2016-04-28 22:25 ` Sebastian Herbszt
2016-04-29 5:58 ` Hannes Reinecke
2016-05-01 21:46 ` Sebastian Herbszt
2016-04-27 11:10 ` [PATCH 07/57] Add LIO-ORG/SUSE RBD backend hardware defaults Hannes Reinecke
2016-04-28 22:32 ` Sebastian Herbszt
2016-04-27 11:10 ` [PATCH 08/57] Allow for empty SCSI revision Hannes Reinecke
2016-04-27 11:10 ` [PATCH 09/57] libmultipath: Do not use 'sscanf' for parsing integers Hannes Reinecke
2016-04-27 11:10 ` [PATCH 10/57] libmultipath: finally fix dev_loss_tmo setting Hannes Reinecke
2016-04-27 11:10 ` [PATCH 11/57] multipathd: fixup queueing mode in 'show maps status' Hannes Reinecke
2016-04-27 11:10 ` [PATCH 12/57] multipathd: fixup a crash when invoking CLI commands Hannes Reinecke
2016-04-27 11:10 ` [PATCH 13/57] multipathd: print error message for invalid arguments Hannes Reinecke
2016-04-27 11:10 ` [PATCH 14/57] libmultipath: correctly initialize pp->sg_id Hannes Reinecke
2016-04-27 11:10 ` [PATCH 15/57] libmultipath: correctly display checker status Hannes Reinecke
2016-04-27 11:10 ` [PATCH 16/57] libmultipath: call get_uid() for all paths Hannes Reinecke
2016-04-27 11:10 ` [PATCH 17/57] libmultipath: additional logging messages when formatting callout Hannes Reinecke
2016-04-27 11:10 ` [PATCH 18/57] libmpathpersist: Fixup whitespaces in Makefile Hannes Reinecke
2016-04-27 11:10 ` [PATCH 19/57] multipathd: Do not print misleading message 'not found in pathvec' Hannes Reinecke
2016-05-02 15:40 ` Benjamin Marzinski
2016-05-03 5:47 ` Hannes Reinecke
2016-05-03 7:27 ` Christophe Varoqui
2016-04-27 11:10 ` [PATCH 20/57] multipathd: Do not update the paths vec when removing paths Hannes Reinecke
2016-04-29 22:39 ` Benjamin Marzinski
2016-05-02 5:48 ` Hannes Reinecke
2016-05-02 15:12 ` Benjamin Marzinski
2016-05-02 17:46 ` Hannes Reinecke
2016-04-27 11:10 ` [PATCH 21/57] libmultipath: avoid double semicolon in lock.h Hannes Reinecke
2016-04-27 11:10 ` [PATCH 22/57] multipath: use option '-i' when called from udev Hannes Reinecke
2016-05-02 15:31 ` Benjamin Marzinski
2016-05-03 5:44 ` Hannes Reinecke
2016-05-03 6:37 ` Christophe Varoqui
2016-05-03 14:14 ` Benjamin Marzinski
2016-05-03 14:39 ` Hannes Reinecke [this message]
2016-04-27 11:10 ` [PATCH 23/57] multipath: remove warning 'failed to get wwid' Hannes Reinecke
2016-05-02 15:43 ` Benjamin Marzinski
2016-05-03 5:48 ` Hannes Reinecke
2016-04-27 11:10 ` [PATCH 24/57] Add dependency on systemd-udevd.service Hannes Reinecke
2016-04-27 11:10 ` [PATCH 25/57] Load all device handler modules on startup Hannes Reinecke
2016-04-27 11:10 ` [PATCH 26/57] 11-dm-mpath.rules: Only import ID_FS_XXX variables if not set Hannes Reinecke
2016-04-27 11:10 ` [PATCH 27/57] Ensure multipathd is started before systemd-udev-trigger.service Hannes Reinecke
2016-04-27 11:10 ` [PATCH 28/57] libmultipath: use a shared lock to co-operate with udev Hannes Reinecke
2016-05-02 16:26 ` Benjamin Marzinski
2016-05-03 5:57 ` Hannes Reinecke
2016-05-03 14:27 ` Benjamin Marzinski
2016-05-03 14:38 ` Alasdair G Kergon
2016-05-03 14:47 ` Benjamin Marzinski
2016-05-03 15:31 ` Germano Percossi
2016-05-03 20:23 ` Benjamin Marzinski
2016-05-04 11:25 ` Germano Percossi
2016-04-27 11:10 ` [PATCH 29/57] Only filter for udev property if uid_attribute is present Hannes Reinecke
2016-04-27 11:10 ` [PATCH 30/57] multipathd: skip uninitialized devices during reconfiguration Hannes Reinecke
2016-05-02 19:14 ` Benjamin Marzinski
2016-05-03 6:04 ` Hannes Reinecke
2016-04-27 11:10 ` [PATCH 31/57] multipathd: improve uxlsnr Hannes Reinecke
2016-04-27 11:10 ` [PATCH 32/57] libmultipath: remove 'needsync' argument from dm_simplecmd_noflush Hannes Reinecke
2016-04-27 11:10 ` [PATCH 33/57] libmultipath: remove 'use_uuid' argument from dm_addmap() Hannes Reinecke
2016-04-27 11:10 ` [PATCH 34/57] Always set DM_UDEV_DISABLE_LIBRARY_FALLBACK Hannes Reinecke
2016-04-27 11:10 ` [PATCH 35/57] libmultipath: pass in cookie as argument for dm_simplecmd() Hannes Reinecke
2016-04-27 11:10 ` [PATCH 36/57] libmultipath: pass in 'cookie' as argument for dm_addmap() Hannes Reinecke
2016-05-02 22:23 ` Benjamin Marzinski
2016-05-03 6:24 ` Hannes Reinecke
2016-05-03 9:31 ` Hannes Reinecke
2016-05-03 14:39 ` Benjamin Marzinski
2016-05-03 14:43 ` Hannes Reinecke
2016-05-03 14:57 ` Benjamin Marzinski
2016-04-27 11:10 ` [PATCH 37/57] Remove 'udev_sync' argument from dm_simplecmd() Hannes Reinecke
2016-05-02 23:33 ` Benjamin Marzinski
2016-04-27 11:10 ` [PATCH 38/57] libmultipath: Fixup 'DM_DEVICE_RELOAD' handling Hannes Reinecke
2016-04-27 11:10 ` [PATCH 39/57] devmapper: do not flush I/O for DM_DEVICE_CREATE Hannes Reinecke
2016-04-27 11:10 ` [PATCH 40/57] libmultipath: fixup dm_rename to complete cookie on failure Hannes Reinecke
2016-05-03 1:16 ` Benjamin Marzinski
2016-04-27 11:10 ` [PATCH 41/57] multipathd: accept zero-size paths in ev_add_path() Hannes Reinecke
2016-04-27 11:10 ` [PATCH 42/57] Use multipath wwid if path wwid is empty Hannes Reinecke
2016-04-27 11:10 ` [PATCH 43/57] multipathd: set uxsock_timeout after reconfiguration Hannes Reinecke
2016-04-27 11:10 ` [PATCH 44/57] multipathd: Do not switch paths on empty multipath tables Hannes Reinecke
2016-04-27 11:10 ` [PATCH 45/57] libmultipath: remove 'get_info' argument for adopt_paths() Hannes Reinecke
2016-04-27 11:10 ` [PATCH 46/57] libmultipath: ensure 'dev_t' is set when store paths Hannes Reinecke
2016-04-27 11:10 ` [PATCH 47/57] libmultipath: sanity check on store_path() Hannes Reinecke
2016-04-27 11:10 ` [PATCH 48/57] dmparser: Use find_path_by_dev() Hannes Reinecke
2016-04-27 11:10 ` [PATCH 49/57] multipathd: do not flush maps on startup Hannes Reinecke
2016-05-03 2:30 ` Benjamin Marzinski
2016-05-03 6:35 ` Hannes Reinecke
2016-04-27 11:10 ` [PATCH 50/57] multipathd: strict loop timings Hannes Reinecke
2016-04-27 11:10 ` [PATCH 51/57] multipathd: Provide standard error description on cli failure Hannes Reinecke
2016-04-27 11:10 ` [PATCH 52/57] libmultipath: make 'dm_addmap' static Hannes Reinecke
2016-04-27 11:10 ` [PATCH 53/57] multipathd: implement 'show map $map format $fmt' Hannes Reinecke
2016-05-03 16:21 ` Benjamin Marzinski
2016-04-27 11:10 ` [PATCH 54/57] multipathd: Increase uxclnt timeout Hannes Reinecke
2016-04-27 11:10 ` [PATCH 55/57] multipathd: asynchronous configuration Hannes Reinecke
2016-05-03 18:23 ` Benjamin Marzinski
2016-05-03 18:25 ` Benjamin Marzinski
2016-05-04 6:47 ` Hannes Reinecke
2016-04-27 11:10 ` [PATCH 56/57] multipathd: push down lock in checkerloop() Hannes Reinecke
2016-05-03 22:17 ` Benjamin Marzinski
2016-05-03 23:24 ` Benjamin Marzinski
2016-05-04 6:40 ` Hannes Reinecke
2016-05-04 6:39 ` Hannes Reinecke
2016-04-27 11:10 ` [PATCH 57/57] Allow specific CLI commands to run unlocked Hannes Reinecke
2016-05-04 3:02 ` Benjamin Marzinski
2016-05-03 7:23 ` [PATCH 00/57] SLES resync Christophe Varoqui
2016-05-04 3:06 ` Benjamin Marzinski
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=5728B83A.3000006@suse.de \
--to=hare@suse.de \
--cc=bmarzins@redhat.com \
--cc=christophe.varoqui@opensvc.com \
--cc=dm-devel@redhat.com \
--cc=snitzer@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.