
On Wed, Jul 21, 2010 at 11:15:05AM +0100, Daniel P. Berrange wrote:
A Linux software bridge will assume the MAC address of the enslaved interface with the numerically lowest MAC addr. When the bridge changes MAC address there is a period of network blackout, so a change should be avoided. The kernel gives TAP devices a completely random MAC address. Occassionally the random TAP device MAC is lower than that of the physical interface (eth0, eth1etc) that is enslaved, causing the bridge to change its MAC.
Ah, that's the reason why it was hiding !
This change sets an explicit MAC address for all TAP devices created using the configured MAC from the XML, but with the high byte set to 0xFE. This should ensure TAP device MACs are higher than any physical interface MAC.
* src/qemu/qemu_conf.c, src/uml/uml_conf.c: Pass in a MAC addr for the TAP device with high byte set to 0xFE * src/util/bridge.c, src/util/bridge.h: Set a MAC when creating the TAP device to override random MAC --- src/qemu/qemu_conf.c | 11 +++++++++-- src/uml/uml_conf.c | 11 +++++++++-- src/util/bridge.c | 42 ++++++++++++++++++++++++++++++++++++++++++ src/util/bridge.h | 3 ++- 4 files changed, 62 insertions(+), 5 deletions(-)
Patch looks fine, ACK, Daniel -- Daniel Veillard | libxml Gnome XML XSLT toolkit http://xmlsoft.org/ daniel@veillard.com | Rpmfind RPM search engine http://rpmfind.net/ http://veillard.com/ | virtualization library http://libvirt.org/