On Wed, Apr 16, 2014 at 08:10:58AM -0400, John Ferlan wrote:
On 04/16/2014 05:19 AM, Daniel P. Berrange wrote:
> On Tue, Apr 15, 2014 at 07:48:52PM -0400, John Ferlan wrote:
<...snip...>
>
> I'm afraid I just don't think this change is safe - I think it will
> cause volumes to go missing from pools as we had before we used
> udevadm settle.
>
OK - not a problem. This'll be one of those cannot fix with explanation
type bugs. Do you believe it's "reasonable" or "good" to at least
have
some sort of message if the udevadm settle timeout is triggered? It is
notable that if the two minute timeout is triggered, then the same
problem exists vis-a-vis having or not having LUNs appear.
I guess we could log a message, but we wouldn't want to use a high
logging level, since if you have LXC guests, we know we'll get these
timeouts every time :-(
Secondary to that - the iSCSI code will end up going through the
settle
code twice - once during it's own FindLU's in the GetHostNumber call
during RefreshPool and then once because it calls the SCSI code's
FindLU's call. Additionally, for a SCSI pool start there are two calls
to settle - once at the end of PoolStart (createVport() after
VPORT_CREATE) and then again through the RefreshPool logic during
FindLU. Do you believe both are necessary or should some rework be done?
I'm not sure to be honest, but I think it is worth investigating. Ideally
I'd say we should only settle once per API call, unless there's a scenario
that forces us otherwise.
Regards,
Daniel
--
|:
http://berrange.com -o-
http://www.flickr.com/photos/dberrange/ :|
|:
http://libvirt.org -o-
http://virt-manager.org :|
|:
http://autobuild.org -o-
http://search.cpan.org/~danberr/ :|
|:
http://entangle-photo.org -o-
http://live.gnome.org/gtk-vnc :|