summaryrefslogtreecommitdiffstats
path: root/drivers/net/bonding/bonding.h
diff options
context:
space:
mode:
authorNikolay Aleksandrov2014-09-11 22:49:28 +0200
committerDavid S. Miller2014-09-13 22:29:07 +0200
commit8c0bc550288d81e9ad8a2ed9136a72140b9ef507 (patch)
tree40b4a29e8721c329dbc2d1b2332f4beecbef45e5 /drivers/net/bonding/bonding.h
parentbonding: 3ad: convert to bond->mode_lock (diff)
downloadkernel-qcow2-linux-8c0bc550288d81e9ad8a2ed9136a72140b9ef507.tar.gz
kernel-qcow2-linux-8c0bc550288d81e9ad8a2ed9136a72140b9ef507.tar.xz
kernel-qcow2-linux-8c0bc550288d81e9ad8a2ed9136a72140b9ef507.zip
bonding: adjust locking comments
Now that locks have been removed, remove some unnecessary comments and adjust others to reflect reality. Also add a comment to "mode_lock" to describe its current users and give a brief summary why they need it. Signed-off-by: Nikolay Aleksandrov <nikolay@redhat.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/bonding/bonding.h')
-rw-r--r--drivers/net/bonding/bonding.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/drivers/net/bonding/bonding.h b/drivers/net/bonding/bonding.h
index 0cda34b827f8..3aff1a815e89 100644
--- a/drivers/net/bonding/bonding.h
+++ b/drivers/net/bonding/bonding.h
@@ -195,6 +195,12 @@ struct bonding {
s32 slave_cnt; /* never change this value outside the attach/detach wrappers */
int (*recv_probe)(const struct sk_buff *, struct bonding *,
struct slave *);
+ /* mode_lock is used for mode-specific locking needs, currently used by:
+ * 3ad mode (4) - protect against running bond_3ad_unbind_slave() and
+ * bond_3ad_state_machine_handler() concurrently.
+ * TLB mode (5) - to sync the use and modifications of its hash table
+ * ALB mode (6) - to sync the use and modifications of its hash table
+ */
spinlock_t mode_lock;
u8 send_peer_notif;
u8 igmp_retrans;