]> git.baikalelectronics.ru Git - kernel.git/commit
bonding: Implement port churn-machine (AD standard 43.4.17).
authorMahesh Bandewar <maheshb@google.com>
Tue, 24 Feb 2015 01:50:11 +0000 (17:50 -0800)
committerDavid S. Miller <davem@davemloft.net>
Tue, 24 Feb 2015 21:05:48 +0000 (16:05 -0500)
commit62c9f41fbc0e9cffa0556e984abfc0e54d9a5033
tree22a0420c1ffd7ed7f996f1dedd675da7644a1d9b
parent9f10a4a15e26d6b5d36735bc7fae0d1d4215fa8c
bonding: Implement port churn-machine (AD standard 43.4.17).

The Churn Detection machines detect the situation where a port is operable,
but the Actor and Partner have not attached the link to an Aggregator and
brought the link into operation within a bound time period. Under normal
operation of the LACP, agreement between Actor and Partner should be reached
very rapidly. Continued failure to reach agreement can be symptomatic of
device failure.

Actor-churn-detection state-machine
Reviewed-by: Nikolay Aleksandrov <nikolay@redhat.com>
===================================

BEGIN=True + PortEnable=False
           |
           v
 +------------------------+   ActorPort.Sync=True  +------------------+
 |   ACTOR_CHURN_MONITOR  | ---------------------> |  NO_ACTOR_CHURN  |
 |========================|                        |==================|
 |    ActorChurn=False    |  ActorPort.Sync=False  | ActorChurn=False |
 | ActorChurn.Timer=Start | <--------------------- |                  |
 +------------------------+                        +------------------+
           |                                                ^
           |                                                |
  ActorChurn.Timer=Expired                                  |
           |                                       ActorPort.Sync=True
           |                                                |
           |                +-----------------+             |
           |                |   ACTOR_CHURN   |             |
           |                |=================|             |
           +--------------> | ActorChurn=True | ------------+
                            |                 |
                            +-----------------+

Similar for the Partner-churn-detection.

Signed-off-by: Mahesh Bandewar <maheshb@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/bonding/bond_3ad.c
drivers/net/bonding/bond_procfs.c
include/net/bond_3ad.h