diff options
author | Susant Sahani <susant@redhat.com> | 2014-07-21 18:52:14 +0530 |
---|---|---|
committer | Tom Gundersen <teg@jklm.no> | 2014-07-21 20:35:21 +0200 |
commit | fb1021a26db14b199c50e3eed77a1daa371f282e (patch) | |
tree | 577bf14218bdf5132809ae05a2230ca6928e5aa7 /src/network/networkd-netdev-bond.h | |
parent | 227cdf2c7ca0ab10af60674f929c4beeedb1ae67 (diff) |
networkd: bond add support for lacp rate
LacpduTransmitRate
option specifies the rate in which link partner to transmit
LACPDU packets in 802.3ad mode. Possible values
slow : Request partner to transmit LACPDUs every 30 seconds
fast : Request partner to transmit LACPDUs every 1 second
The default is slow.
chages:
1. Added enum bond_lacp_rate_table
2. gperf LacpduTransmitRate
Test:
conf file:
[NetDev]
Name=bond1
Kind=bond
[Bond]
Mode=802.3ad
LacpduTransmitRate=fast
test:
cat /proc/net/bonding/bond1
Ethernet Channel Bonding Driver: v3.7.1 (April 27, 2011)
Bonding Mode: IEEE 802.3ad Dynamic link aggregation
Transmit Hash Policy: layer2+3 (2)
MII Status: up
MII Polling Interval (ms): 0
Up Delay (ms): 0
Down Delay (ms): 0
802.3ad info
LACP rate: fast
Min links: 0
Aggregator selection policy (ad_select): stable
bond bond1 has no active aggregator
[tomegun: renamed from LacpduTransmitRate to LACPTransmitRate, manpage fixes and
dropped bond_ prefix from variables]
Diffstat (limited to 'src/network/networkd-netdev-bond.h')
-rw-r--r-- | src/network/networkd-netdev-bond.h | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/network/networkd-netdev-bond.h b/src/network/networkd-netdev-bond.h index 0e9955ee3d..fea076817a 100644 --- a/src/network/networkd-netdev-bond.h +++ b/src/network/networkd-netdev-bond.h @@ -47,11 +47,20 @@ typedef enum BondXmitHashPolicy { _NETDEV_BOND_XMIT_HASH_POLICY_INVALID = -1 } BondXmitHashPolicy; + +typedef enum BondLacpRate { + NETDEV_BOND_LACP_RATE_SLOW, + NETDEV_BOND_LACP_RATE_FAST, + _NETDEV_BOND_LACP_RATE_MAX, + _NETDEV_BOND_LACP_RATE_INVALID = -1, +} BondLacpRate; + struct Bond { NetDev meta; BondMode mode; BondXmitHashPolicy xmit_hash_policy; + BondLacpRate lacp_rate; }; extern const NetDevVTable bond_vtable; @@ -62,5 +71,9 @@ BondMode bond_mode_from_string(const char *d) _pure_; const char *bond_xmit_hash_policy_to_string(BondXmitHashPolicy d) _const_; BondXmitHashPolicy bond_xmit_hash_policy_from_string(const char *d) _pure_; +const char *bond_lacp_rate_to_string(BondLacpRate d) _const_; +BondLacpRate bond_lacp_rate_from_string(const char *d) _pure_; + int config_parse_bond_mode(const char *unit, const char *filename, unsigned line, const char *section, unsigned section_line, const char *lvalue, int ltype, const char *rvalue, void *data, void *userdata); int config_parse_bond_xmit_hash_policy(const char *unit, const char *filename, unsigned line, const char *section, unsigned section_line, const char *lvalue, int ltype, const char *rvalue, void *data, void *userdata); +int config_parse_bond_lacp_rate(const char *unit, const char *filename, unsigned line, const char *section, unsigned section_line, const char *lvalue, int ltype, const char *rvalue, void *data, void *userdata); |