[libvirt] [PATCH] util: fix build on non-Linux

Roman Bogorodskiy bogorodskiy at gmail.com
Wed Apr 22 09:07:09 UTC 2015


  Peter Krempa wrote:

> On Wed, Apr 22, 2015 at 12:19:51 +0400, Roman Bogorodskiy wrote:
> > Build fails on non-Linux systems with this error:
> > 
> >   CC       util/libvirt_util_la-virnetdev.lo
> > util/virnetdev.c:364:1: error: unused function 'virNetDevReplaceMacAddress' [-Werror,-Wunused-function]
> > virNetDevReplaceMacAddress(const char *linkdev,
> > ^
> > util/virnetdev.c:406:1: error: unused function 'virNetDevRestoreMacAddress' [-Werror,-Wunused-function]
> > virNetDevRestoreMacAddress(const char *linkdev,
> > ^
> > 2 errors generated.
> > 
> > The virNetDev{Restore,Replace}MacAddress() functions are only used
> > by VF-related routines that are available on Linux only. So move these
> > functions under the same #ifdef.
> > ---
> >  src/util/virnetdev.c | 176 ++++++++++++++++++++++++++-------------------------
> >  1 file changed, 89 insertions(+), 87 deletions(-)
> > 
> > diff --git a/src/util/virnetdev.c b/src/util/virnetdev.c
> > index b7ea524..5069064 100644
> > --- a/src/util/virnetdev.c
> > +++ b/src/util/virnetdev.c
> > @@ -351,93 +351,6 @@ int virNetDevGetMAC(const char *ifname,
> >  
> >  
> >  
> 
> A few too many empty lines will remain here.
> 
> > -/**
> > - * virNetDevReplaceMacAddress:
> > - * @macaddress: new MAC address for interface
> > - * @linkdev: name of interface
> > - * @stateDir: directory to store old MAC address
> > - *
> > - * Returns 0 on success, -1 on failure
> > - *
> > - */
> 
> ...
> 
> > +static int
> > +virNetDevRestoreMacAddress(const char *linkdev,
> > +                           const char *stateDir)
> > +{
> > +    int rc = -1;
> > +    char *oldmacname = NULL;
> > +    char *macstr = NULL;
> > +    char *path = NULL;
> > +    virMacAddr oldmac;
> > +
> > +    if (virAsprintf(&path, "%s/%s",
> > +                    stateDir,
> > +                    linkdev) < 0)
> > +        return -1;
> > +
> > +    if (virFileReadAll(path, VIR_MAC_STRING_BUFLEN, &macstr) < 0)
> > +        goto cleanup;
> > +
> > +    if (virMacAddrParse(macstr, &oldmac) != 0) {
> > +        virReportError(VIR_ERR_INTERNAL_ERROR,
> > +                       _("Cannot parse MAC address from '%s'"),
> > +                       oldmacname);
> > +        goto cleanup;
> > +    }
> > +
> > +    /*reset mac and remove file-ignore results*/
> > +    rc = virNetDevSetMAC(linkdev, &oldmac);
> > +    ignore_value(unlink(path));
> > +
> > + cleanup:
> > +    VIR_FREE(macstr);
> > +    VIR_FREE(path);
> > +    return rc;
> > +}
> > +
> > +
> > +
> 
> And a few too many empty lines are added here.
> 
> >  static struct nla_policy ifla_vf_policy[IFLA_VF_MAX+1] = {
> >      [IFLA_VF_MAC]       = { .type = NLA_UNSPEC,
> >                              .maxlen = sizeof(struct ifla_vf_mac) },
> 
> ACK,

Extra blank lines dropped and pushed. Thanks!

Roman Bogorodskiy




More information about the libvir-list mailing list