[libvirt] [PATCH v3 02/14] migration: refactor: reuse p2p url check

Jiri Denemark jdenemar at redhat.com
Wed Sep 30 14:12:09 UTC 2015


On Wed, Sep 30, 2015 at 10:20:23 +0300, Nikolay Shirokovskiy wrote:
> 
> 
> On 25.09.2015 17:12, Jiri Denemark wrote:
> > On Fri, Sep 18, 2015 at 18:05:40 +0300, Nikolay Shirokovskiy wrote:
> >> Refactor dconnuri local server URI check to common API.
> >>
> >> Signed-off-by: Nikolay Shirokovskiy <nshirokovskiy at virtuozzo.com>
> >> ---
> >>  src/libvirt-domain.c |   44 ++++++++++++++++++++++++--------------------
> >>  1 files changed, 24 insertions(+), 20 deletions(-)
> >>
> >> diff --git a/src/libvirt-domain.c b/src/libvirt-domain.c
> >> index 697d58d..2e43062 100644
> >> --- a/src/libvirt-domain.c
> >> +++ b/src/libvirt-domain.c
> >> @@ -3293,6 +3293,28 @@ virDomainMigrateVersion3Params(virDomainPtr domain,
> >>  }
> >>  
> >>  
> >> +static int ATTRIBUTE_NONNULL(1)
> >> +virDomainMigrateCheckNotLocal(const char *dconnuri)
> >> +{
> >> +    virURIPtr tempuri = NULL;
> >> +    int ret = -1;
> >> +
> >> +    if (!(tempuri = virURIParse(dconnuri)))
> >> +        goto cleanup;
> >> +    if (!tempuri->server || STRPREFIX(tempuri->server, "localhost")) {
> >> +        virReportInvalidArg(dconnuri, "%s",
> >> +                            _("Attempt to migrate guest to the same host %s"));
> > 
> > Hmm, I don't think this new error message is better than the old one.
> > But anyway, we shouldn't need this code at all, checking dconnuri on a
> > client and then passing it to libvirtd which will have to check it again
> > does not make a lot of sense.
> > 
> > In other words, I think we should just completely remove the dconuri
> > checks from virDomainMigratePeer2Peer*.
> > 
> > Jirka
> > 
> Sorry, for delay. I hoped you'll finish series review.

Yeah, sorry about that. A long weekend came into my review session :-)

> The meaning of this check is unclear, so i found it origins, see
> https://www.redhat.com/archives/libvir-list/2011-January/msg00437.html.
> This message states that without this check we can get a deadlock, thus
> I leave it.
> Also I investigate if this check had been moved to qemu code as reviewer suggested.
> Looks likes it is not.

I see, unless we have the check in the qemu driver since a long time
ago, I'm afraid we need to keep it in libvirt-domain.c.

Jirka




More information about the libvir-list mailing list