diff options
author | Ethan Jackson <ethan@nicira.com> | 2011-04-13 17:58:26 -0700 |
---|---|---|
committer | Ethan Jackson <ethan@nicira.com> | 2011-04-15 11:04:04 -0700 |
commit | 5827ce14d087a18ede839c39ce3438e0b0e6f717 (patch) | |
tree | 331acd89e23782a85e234844a7645888fee27d74 /lib/bond.h | |
parent | 0f1a47f108ba6c599b252bc1b17ea59609d60e09 (diff) |
bond: Give bridge control over LACP module.
Before this patch, the bonding code had taken over responsibility
for running the LACP module. However, the bonding code only needs
the LACP module for some basic status queries. LACP and bonding
are actually logically parallel modules and do not really have a
parent child relationship. Furthermore, we need to be able to run
LACP on non-bonded interfaces which the existing approach
prevented. This patch gives control of the LACP module back to the
bridge.
Diffstat (limited to 'lib/bond.h')
-rw-r--r-- | lib/bond.h | 9 |
1 files changed, 2 insertions, 7 deletions
@@ -24,7 +24,6 @@ #include "tag.h" struct flow; -struct lacp_slave_settings; struct netdev; struct ofpbuf; @@ -65,8 +64,7 @@ struct bond_settings { /* Legacy compatibility. */ bool fake_iface; /* Update fake stats for netdev 'name'? */ - /* LACP. */ - struct lacp_settings *lacp; /* NULL to disable LACP. */ + const struct lacp *lacp; /* LACP for this bond. May be NULL. */ }; /* Program startup. */ @@ -77,8 +75,7 @@ struct bond *bond_create(const struct bond_settings *); void bond_destroy(struct bond *); bool bond_reconfigure(struct bond *, const struct bond_settings *); -void bond_slave_register(struct bond *, void *slave_, struct netdev *, - const struct lacp_slave_settings *); +void bond_slave_register(struct bond *, void *slave_, struct netdev *); void bond_slave_unregister(struct bond *, const void *slave); void bond_run(struct bond *, struct tag_set *); @@ -101,8 +98,6 @@ enum bond_verdict bond_check_admissibility(struct bond *, const void *slave_, tag_type *); void *bond_choose_output_slave(struct bond *, const struct flow *, uint16_t vlan, tag_type *); -void bond_process_lacp(struct bond *, void *slave, - const struct ofpbuf *packet); /* Rebalancing. */ void bond_account(struct bond *, const struct flow *, uint16_t vlan, |