[ovs-git] Open vSwitch: vswitchd: Do not choose generated MAC address for local port. (next)

dev at openvswitch.org dev at openvswitch.org
Mon Dec 14 21:09:56 UTC 2009

This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "Open vSwitch".

The branch, next has been updated
       via  141f49423d7433b2a82b0de2d101f2dc6e6dbac9 (commit)
      from  342045e17750e755558616f7fd826470e9b11a7e (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit 141f49423d7433b2a82b0de2d101f2dc6e6dbac9
Diffs: http://openvswitch.org/cgi-bin/gitweb.cgi?p=openvswitch;a=commitdiff;h=141f49423d7433b2a82b0de2d101f2dc6e6dbac9
Author: Ben Pfaff <blp at nicira.com>
vswitchd: Do not choose generated MAC address for local port.
ovs-vswitchd needs to choose a sensible MAC address for the local port of
a bridge.  Until now, the algorithm has ignored certain interfaces, in
particular internal interfaces and those with the MAC addresses that
indicate that they are probably Xen VIFs.  The goal is to choose a physical
interface's MAC address because this is more stable and more likely to
be meaningful to the outside world.  Stability, in turn, is important
because the MAC address of the local port is used as the default datapath
ID for OpenFlow connections.

This existing algorithm was too specialized to work well with the new
kinds of ports that we have been introducing in OVS.  In particular,
GRE ports could be chosen as the MAC address.  This commit changes the
algorithm for choosing the local port MAC address.  Now it ignores any
interface that has the "local" bit set in its MAC address, which
catches GRE ports.  The new rule also catches the VIF and internal
port cases, so this commit also deletes those special cases.

This commit deleted the only user of eth_addr_is_vif(), so it deletes
that function also.

Jesse Gross suggested this revised heuristic.

CC: Jeremy Stribling <strib at nicira.com>


Summary of changes:
 lib/packets.h     |    8 --------
 vswitchd/bridge.c |   15 ++++++---------
 2 files changed, 6 insertions(+), 17 deletions(-)

Open vSwitch

More information about the git mailing list