[ovs-dev] [bondlib 00/19] break bonding into separate library

Ben Pfaff blp at nicira.com
Fri Mar 25 17:35:33 UTC 2011


This series of patches breaks bonding out of vswitchd/bridge.c into
a separate library.  This should make it easier to move bonding into
ofproto in future work.

Breaking bonding out is followed by a few patches that do additional
cleanups to vswitchd/bridge.c.

This patch series is essentially untested.  However, now that bonding
is separate, it should be possible to write unit tests for it.  I
hope to do that sometime soon.

Ben Pfaff (19):
  packets: New function snap_compose(); rename compose_packet() for
    consistency.
  packets: Fix potential use-after-free in compose_benign_packet().
  packets: New function eth_set_vlan_tci(), from dpif-netdev.
  packets: Reserve headroom for VLAN header in eth_compose(),
    snap_compose().
  list: New functions list_is_singleton(), list_is_short().
  tag: New function tag_set_union().
  vswitch: Improve schema documentation.
  lacp: Fix misleading prototype for lacp_configure().
  lacp: Remove unneeded forward references from header file.
  bridge: Drop LACP configuration members from struct iface and struct
    port.
  lacp: Encapsulate configuration into new structs.
  bridge: Improve comment.
  bridge: Drop obsolete comment.
  bridge: Simplify and clean up bond slave enable/disable.
  bridge: Break bonding implementation out into library.
  bridge: Get rid of 'n_ifaces' member of struct port.
  bridge: Change "struct dst" from containing a dp_ifidx to a struct
    iface *.
  bridge: Separate mirroring logic from forwarding logic.
  bridge: Avoid partitioning the dst set.

 lib/automake.mk      |    2 +
 lib/bond.c           | 1491 ++++++++++++++++++++++++++++++++++++++++++
 lib/bond.h           |  111 ++++
 lib/dpif-netdev.c    |   32 +-
 lib/lacp.c           |   44 +-
 lib/lacp.h           |   34 +-
 lib/list.c           |   16 +-
 lib/list.h           |    2 +
 lib/packets.c        |  117 +++-
 lib/packets.h        |   14 +-
 lib/tag.c            |   12 +-
 lib/tag.h            |    3 +-
 ofproto/ofproto.c    |    4 +-
 tests/test-list.c    |    4 +-
 vswitchd/bridge.c    | 1763 +++++++-------------------------------------------
 vswitchd/vswitch.xml |   17 +-
 16 files changed, 2034 insertions(+), 1632 deletions(-)
 create mode 100644 lib/bond.c
 create mode 100644 lib/bond.h




More information about the dev mailing list