diff options
author | Jon Paul Maloy <jon.maloy@ericsson.com> | 2015-10-22 14:51:40 +0200 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2015-10-24 15:56:35 +0200 |
commit | fd556f209af53b9cdc45df8c467feb235376c4df (patch) | |
tree | abca98757b551a23d08dd80ca3b72a1d3ac7a564 /net/tipc/node.c | |
parent | tipc: let broadcast transmission use new link transmit function (diff) | |
download | linux-fd556f209af53b9cdc45df8c467feb235376c4df.tar.xz linux-fd556f209af53b9cdc45df8c467feb235376c4df.zip |
tipc: introduce capability bit for broadcast synchronization
Until now, we have tried to support both the newer, dedicated broadcast
synchronization mechanism along with the older, less safe, RESET_MSG/
ACTIVATE_MSG based one. The latter method has turned out to be a hazard
in a highly dynamic cluster, so we find it safer to disable it completely
when we find that the former mechanism is supported by the peer node.
For this purpose, we now introduce a new capabability bit,
TIPC_BCAST_SYNCH, to inform any peer nodes that dedicated broadcast
syncronization is supported by the present node. The new bit is conveyed
between peers in the 'capabilities' field of neighbor discovery messages.
Signed-off-by: Jon Maloy <jon.maloy@ericsson.com>
Reviewed-by: Ying Xue <ying.xue@windriver.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/tipc/node.c')
-rw-r--r-- | net/tipc/node.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/net/tipc/node.c b/net/tipc/node.c index d3f7ca202281..28bcd7be23c6 100644 --- a/net/tipc/node.c +++ b/net/tipc/node.c @@ -584,8 +584,10 @@ void tipc_node_check_dest(struct net *net, u32 onode, if (!tipc_link_create(n, if_name, b->identity, b->tolerance, b->net_plane, b->mtu, b->priority, b->window, mod(tipc_net(net)->random), - tipc_own_addr(net), onode, &le->maddr, - &le->inputq, &n->bclink.namedq, &l)) { + tipc_own_addr(net), onode, + n->capabilities, + &le->maddr, &le->inputq, + &n->bclink.namedq, &l)) { *respond = false; goto exit; } |