]> git.baikalelectronics.ru Git - kernel.git/commit
tipc: interrupt link synchronization when a link goes down
authorJon Paul Maloy <jon.maloy@ericsson.com>
Thu, 20 Aug 2015 06:12:55 +0000 (02:12 -0400)
committerDavid S. Miller <davem@davemloft.net>
Sun, 23 Aug 2015 23:14:45 +0000 (16:14 -0700)
commit0137b709b3aeac4e97aadc94793ce21139fe969a
treee46e980ddb0ff5c3129981aa817e17c4a4006426
parentfb58b466cd49299925555fde7aaecbf4bda46476
tipc: interrupt link synchronization when a link goes down

When we introduced the new link failover/synch mechanism
in commit 73baedd10c54cdde778518512a66b505cd71b1ca
("tipc: move link synch and failover to link aggregation level"),
we missed the case when the non-tunnel link goes down during the link
synchronization period. In this case the tunnel link will remain in
state LINK_SYNCHING, something leading to unpredictable behavior when
the failover procedure is initiated.

In this commit, we ensure that the node and remaining link goes
back to regular communication state (SELF_UP_PEER_UP/LINK_ESTABLISHED)
when one of the parallel links goes down. We also ensure that we don't
re-enter synch mode if subsequent SYNCH packets arrive on the remaining
link.

Reviewed-by: Ying Xue <ying.xue@windriver.com>
Signed-off-by: Jon Maloy <jon.maloy@ericsson.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/tipc/link.c
net/tipc/node.c