
Gerhard Stenzel <gstenzel@linux.vnet.ibm.com> wrote on 05/12/2010 12:34:09 PM:
On Wed, 2010-05-12 at 12:13 -0400, Stefan Berger wrote:
I'd suggest to use this patch as a base for triggering the setup protocol with the 802.1Qb{g|h} switch.
Here is a RFC patch, which demonstrates how libvirt could communicate with lldpad via the lldptool for the 802.1Qbg case. Please note, that there is currently no public available version of lldptool which accepts this command line. This is also work in progress.
[...]
+ virFormatMacAddr(mac, macaddr); + + rc = ifaceGetRootIface(-1, linkdev, rootifname); + if (rc != 0) { + macvtapError(VIR_ERR_INTERNAL_ERROR, + _("cannot get root interface for %s"), + linkdev); + return rc; + } + VIR_DEBUG("root iface of %s is %s\n", linkdev, rootifname); + + ifaceGetVlanID(linkdev, &vlanid); + VIR_DEBUG("vlan id of %s is %d\n", linkdev, vlanid);
I am wondering whether it would not be 'more general' to have lldpad determine the root interface and handling bonding interfaces on the way rather than libvirt trying to determine that here. So we would just pass the linkdev or the even the macvtap to lldptool. The same would be true for finding the VLAN ID. For both the code I posted here on libvirt mailing list could be used in lldpad. For now I won't check it in. Stefan