<div dir="ltr">Still tanked in my local git tree.<div>I'll push them online late this afternoon.</div><div><br></div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Fri, Jul 4, 2014 at 8:24 AM, Hannes Reinecke <span dir="ltr"><<a href="mailto:hare@suse.de" target="_blank">hare@suse.de</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="HOEnZb"><div class="h5">On 07/03/2014 09:25 PM, Benjamin Marzinski wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
On Thu, Jul 03, 2014 at 01:05:37PM +0200, Hannes Reinecke wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
On 07/02/2014 09:48 PM, Benjamin Marzinski wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
On Wed, Jul 02, 2014 at 08:03:38AM +0200, Hannes Reinecke wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
On 07/01/2014 09:22 PM, Christophe Varoqui wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Hannes,<br>
<br>
would you Ack this one, or do you have some other idea for this in<br>
your tree ?<br>
<br>
</blockquote>
Sigh. The whole multipath / systemd / dracut integration<br>
is _a mess_.<br>
The main problem is that RH and SUSE treat multipath handling differently.<br>
(From what I can see. I've still a hard time to understand how<br>
  multipath booting works with RH. So there might be errors.)<br>
<br>
RH is taking a restrictive approach, ie it'll allow only configured<br>
multipath devices during boot. IE it'll accept only devices present<br>
in '/etc/multipath/wwids' for booting. So when coming across a new<br>
wwid multipath won't be setup there, so of course they'll need an<br>
additional parameter for that.<br>
</blockquote>
<br>
That's not strictly true.  multipathd will happily create a multipath<br>
device on top of any valid scsi devices it finds, but unless those<br>
devices are in /etc/multipath/wwids, other components, like lvm won't<br>
know to leave them alone.  This actually isn't an issue during the<br>
initramfs boot stages because lvm doesn't do autoactivation there.<br>
<br>
So, if the device appears in the initramfs portion of boot, we're great.<br>
<br>
The specific issue that prompted this goes like this:<br>
<br>
- The iscsi initiator is not setup to run in the initramfs on install<br>
- Storage is added to the system that makes up a working LV<br>
- Once the machine boots up, and is past the initramfs, the iscsi<br>
initiator starts up and discovers the devices.<br>
- Multipath races with lvmetad and loses<br>
- Now you have a LV built on top of a single path device, instead of<br>
   being multipathed (The LV is on top of a partition of the path<br>
   device, so reassign_maps doesn't work on it)<br>
<br>
If you tell the redhat installer that you want to use multipath, this<br>
causes problems, since it can't disassemble the an arbitrary stack of<br>
virtual devices.  Eventually, we'll fix that issue, and this won't<br>
matter anymore, because it will just be able to disassemble the virtual<br>
device stack, and rerun multipath, to make everything autoassemble in<br>
the correct order.<br>
<br>
</blockquote>
Hmm. Similar to what I've seen here when booting with multipath enabled and<br>
an empty '/etc/multipath/wwids' file.<br>
<br>
We're having an udev rule calling 'multipath -u' to check if the device is<br>
eligible for multipathing. If so it'll set the various udev properties to<br>
keep LVM and others from working with that device.<br>
<br>
But as 'multipath -u' is be checking /etc/multipath/wwids it will always<br>
report 'not a multipath device'.<br>
So I would be perfectly happy with 'multipath -u' _not_ checking<br>
/etc/multipath/wwids (or have a switch for doing so).<br>
</blockquote>
<br>
'multipath -u'? Do you mean 'multipath -c'?  I do worry that not<br>
checking the wwids file could break things were some device appears<br>
multipathable, but will never successfully get created for reasons<br>
outside of multipath's knowledge.  The wwids file makes sure that this<br>
device is multipathable, because it HAS been multipathed before.<br>
<br>
That being said, I have no objections to a switch to avoid the wwid file<br>
check.<br>
<br>
</blockquote></div></div>
Okay, I've send a patch.<div class=""><br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Anyway. There is actually a slight inconsistency with the above approach:<br>
Multipath is _not_ setup for autoconfiguration; from my understanding this<br>
was exactly why /etc/multipath/wwids was introduced in the first place.<br>
LVM, on the other hand, is trying to do autoconfiguration.<br>
<br>
Why? I would set either both to autoconfiguration or none.<br>
If I want something different I need to configure the system.<br>
</blockquote>
<br>
Well, multipath is only not set up to do autoconfiguration because you<br>
keep objecting to my find_multipaths patch, which makes multipath only<br>
run on devices that have more than one path. With that, you can usually<br>
leave the blacklists alone, and you will only get the devices that you<br>
want.<br>
<br>
</blockquote></div>
Oh, I don't have any objections to that, provided it's configurable<br>
via the config file.<br>
Care to send a patch for that?<div class=""><br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Can you clarify what the intended usage for /etc/multipath/wwids is?<br>
I was under the impression that it's been introduced to keep<br>
multipath from accepting unconfigured devices ...<br>
</blockquote>
<br>
Like I mentioned above, it was added to avoid the situations where<br>
multipath isn't blacklisted on a device, but is unable to set up on it.<br>
We use this to so that 'multipath -c' doesn't claim a device and keep<br>
lvm or md from using it when it shouldn't.<br>
<br>
</blockquote></div>
Ah, I've been luckier than you, then.<br>
I keep telling folks that multipath will grab all devices, and the only way to modify this is blacklisting devices via /etc/multipath.conf.<br>
So any system where the above happens is per definition misconfigured :-)<br>
<br>
Christophe, what happened to the patches you've said to have applied? I haven't seen them showing up in the git repository ...<div class="HOEnZb"><div class="h5"><br>
<br>
Cheers,<br>
<br>
Hannes<br>
-- <br>
Dr. Hannes Reinecke                   zSeries & Storage<br>
<a href="mailto:hare@suse.de" target="_blank">hare@suse.de</a>                          <a href="tel:%2B49%20911%2074053%20688" value="+4991174053688" target="_blank">+49 911 74053 688</a><br>
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg<br>
GF: J. Hawn, J. Guild, F. Imendörffer, HRB 16746 (AG Nürnberg)<br>
<br>
--<br>
dm-devel mailing list<br>
<a href="mailto:dm-devel@redhat.com" target="_blank">dm-devel@redhat.com</a><br>
<a href="https://www.redhat.com/mailman/listinfo/dm-devel" target="_blank">https://www.redhat.com/<u></u>mailman/listinfo/dm-devel</a><br>
</div></div></blockquote></div><br></div>