[libvirt] [PATCH] Fix compilation on non-macvtap systems

Laine Stump laine at laine.org
Thu Jun 23 00:45:23 UTC 2011


On 06/22/2011 06:42 PM, Matthias Bolte wrote:
> The refactoring in 6a5978833a5 and df3d8c362d3 was incomplete
> as it accidentally moved macvtap related code out of a
> #if WITH_MACVTAP in a #if __linux__ block. To fix this move
> ifaceMacvtapLinkAdd and ifaceMacvtapLinkDump back under
> #if WITH_MACVTAP.
>
> Also nlComm was moved from #if WITH_MACVTAP to #if __linux__
> but configure.ac was not updated to match this, as libnl is
> now required on Linux always because of this.

So with your changes it's still required for all Linux builds? That's 
potentially not good at all. RHEL5 uses libnl 1.0, which is not ABI 
compatible with libnl 1.1 (which everything in libvirt is written to). 
(Up to now we've been saved the headache because macvtap isn't 
enabled/supported on RHEL5.)

The upstream libnl maintainer (I'm Cc'ing him) has told me it wouldn't 
be difficult to make libvirt's libnl usage compatible with all versions 
of libnl, but he didn't elaborate. If we're lucky, the libnl usage in 
that bit of code will require no change, but we definitely shouldn't let 
ourselves get to a release that requires libnl for all Linux builds 
without resolving this.

(Thomas - the code in question is in src/util/netlink.[ch] of 
git://libvirt.org/libvirt.git)




More information about the libvir-list mailing list