summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2018-05-16 19:15:12 +0300
committerDavid S. Miller <davem@davemloft.net>2018-05-16 19:15:12 +0300
commit5a63f77af7d69deb02a92b60d61141fe687997f8 (patch)
treedb9d63a1cb1d8afe910fc0bbf24ad16dd3fdf887 /include
parent967c2993845b80ecf3a3d46c0f64e7cd03bb4808 (diff)
parent1386c36b30388f46a95100924bfcae75160db715 (diff)
downloadlinux-5a63f77af7d69deb02a92b60d61141fe687997f8.tar.xz
Merge branch 'bonding-performance-and-reliability'
Debabrata Banerjee says: ==================== bonding: performance and reliability Series of fixes to how rlb updates are handled, code cleanup, allowing higher performance tx hashing in balance-alb mode, and reliability of link up/down monitoring. v2: refactor bond_is_nondyn_tlb with inline fn, update log comment to point out that multicast addresses will not get rlb updates. ==================== Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'include')
-rw-r--r--include/net/bonding.h11
1 files changed, 9 insertions, 2 deletions
diff --git a/include/net/bonding.h b/include/net/bonding.h
index b52235158836..808f1d167349 100644
--- a/include/net/bonding.h
+++ b/include/net/bonding.h
@@ -285,8 +285,15 @@ static inline bool bond_needs_speed_duplex(const struct bonding *bond)
static inline bool bond_is_nondyn_tlb(const struct bonding *bond)
{
- return (BOND_MODE(bond) == BOND_MODE_TLB) &&
- (bond->params.tlb_dynamic_lb == 0);
+ return (bond_is_lb(bond) && bond->params.tlb_dynamic_lb == 0);
+}
+
+static inline bool bond_mode_can_use_xmit_hash(const struct bonding *bond)
+{
+ return (BOND_MODE(bond) == BOND_MODE_8023AD ||
+ BOND_MODE(bond) == BOND_MODE_XOR ||
+ BOND_MODE(bond) == BOND_MODE_TLB ||
+ BOND_MODE(bond) == BOND_MODE_ALB);
}
static inline bool bond_mode_uses_xmit_hash(const struct bonding *bond)