[libvirt] [PATCH v3 10/36] network: move fixup for domain actual net def out of network driver
Daniel P. Berrangé
berrange at redhat.com
Fri Mar 22 15:01:36 UTC 2019
On Thu, Mar 21, 2019 at 10:33:30PM -0400, Laine Stump wrote:
> On 3/19/19 8:46 AM, Daniel P. Berrangé wrote:
> > The hypervisor drivers are soon going to communicate with the network
> > driver via public APIs only. As such the network driver will not ever
> > see the domain actual network def. Thus the backwards compatibility
> > fixup logic must be moved out of the network driver.
> >
> > Signed-off-by: Daniel P. Berrangé <berrange at redhat.com
> > ---
> > src/conf/domain_conf.c | 25 +++++++++++++++++++++++++
> > src/network/bridge_driver.c | 20 --------------------
> > 2 files changed, 25 insertions(+), 20 deletions(-)
> >
> > diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c
> > index 99b75e26f3..35d965d2a3 100644
> > --- a/src/conf/domain_conf.c
> > +++ b/src/conf/domain_conf.c
> > @@ -30210,6 +30210,7 @@ virDomainNetNotifyActualDevice(virConnectPtr conn,
> > virDomainDefPtr dom,
> > virDomainNetDefPtr iface)
> > {
> > + virDomainNetType actualType = virDomainNetGetActualType(iface);
> > virNetworkPtr net = NULL;
> > if (!netNotify)
> > @@ -30218,6 +30219,30 @@ virDomainNetNotifyActualDevice(virConnectPtr conn,
> > if (!(net = virNetworkLookupByName(conn, iface->data.network.name)))
> > return;
> > + /* if we're restarting libvirtd after an upgrade from a version
> > + * that didn't save bridge name in actualNetDef for
> > + * actualType==network, we need to copy it in so that it will be
> > + * available in all cases
> > + */
> > + if (actualType == VIR_DOMAIN_NET_TYPE_NETWORK &&
> > + !iface->data.network.actual->data.bridge.brname) {
> > + char *bridge = virNetworkGetBridgeName(net);
> > + if (!bridge)
> > + goto cleanup;
> > + VIR_FREE(iface->data.network.actual->data.bridge.brname);
> > + iface->data.network.actual->data.bridge.brname = bridge;
> > + }
> > +
>
>
> The above code was added in libvirt 1.2.11 in December 2014. It seems nearly
> impossible that someone would be upgrading from a libvirt that was 1.2.10 or
> older straight to libvirt-5.2.0 *without rebooting their host*. For this
> reason, I think the above code can/should be retired.
Yeah, I think that's probably ok
>
>
> Reviewed-by: Laine Stump <laine at laine.org>
>
>
> (either way, whether you decide to leave that code in or not.)
>
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 :|
More information about the libvir-list
mailing list