On Wed, Apr 17, 2019 at 04:33:54PM -0400, Laine Stump wrote:
> On 4/17/19 1:19 PM, Daniel P. Berrangé wrote:
> > The virNetDevBandwidthParse method uses the interface type to decide
> > whether to allow use of the "floor" parameter. Using the interface
> > type is not convenient as callers may not have that available, but
> > still wish to allow use of "floor".
> 
> 
> Also, this is one of the things that gave rise to the distinction between
> actualType == NETWORK and actualType == BRIDGE, and this patch allows us to
> eliminate that (hopefully) without causing breakage.

Well sort of.  If using a plain bridge virtual network you can't
use floor - that's only valid for routed networks. Trying to enforce
this at parse time is doomed though - you can only corrrectly report
this at runtime as you need the context of the virtual network itself.

This was already an issue when parsing the top level netdef - only
the actual netdef had any better checking.

I'm almost inclined to remove all the logic preventing "floor" at
XML parse time and rely on runtime checks entirely.


> > diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c
> > index 51aa48f421..0df3c2ed49 100644
> > --- a/src/conf/domain_conf.c
> > +++ b/src/conf/domain_conf.c
> > @@ -11270,7 +11270,7 @@ virDomainActualNetDefParseXML(xmlNodePtr node,
> >       if (bandwidth_node &&
> >           virNetDevBandwidthParse(&actual->bandwidth,
> >                                   bandwidth_node,
> > -                                actual->type) < 0)
> > +                                def->type == VIR_DOMAIN_NET_TYPE_NETWORK) 
> > < 0)
> 
> 
> This bit here ^^^ doesn't compile, since def is undefined. You would need to
> check "parent->type" instead.

Should be "actual->type" in fact.


Regards,
Daniel
-- 
|: https://berrange.com      -o-    https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org         -o-            https://fstop138.berrange.com :|
|: https://entangle-photo.org    -o-    https://www.instagram.com/dberrange :|

--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list

Reply via email to