diff options
Diffstat (limited to 'net/tipc/node.c')
-rw-r--r-- | net/tipc/node.c | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/net/tipc/node.c b/net/tipc/node.c index c77dd2f3c589..b71e4e376bb9 100644 --- a/net/tipc/node.c +++ b/net/tipc/node.c | |||
@@ -1681,7 +1681,8 @@ discard: | |||
1681 | kfree_skb(skb); | 1681 | kfree_skb(skb); |
1682 | } | 1682 | } |
1683 | 1683 | ||
1684 | void tipc_node_apply_tolerance(struct net *net, struct tipc_bearer *b) | 1684 | void tipc_node_apply_property(struct net *net, struct tipc_bearer *b, |
1685 | int prop) | ||
1685 | { | 1686 | { |
1686 | struct tipc_net *tn = tipc_net(net); | 1687 | struct tipc_net *tn = tipc_net(net); |
1687 | int bearer_id = b->identity; | 1688 | int bearer_id = b->identity; |
@@ -1696,8 +1697,13 @@ void tipc_node_apply_tolerance(struct net *net, struct tipc_bearer *b) | |||
1696 | list_for_each_entry_rcu(n, &tn->node_list, list) { | 1697 | list_for_each_entry_rcu(n, &tn->node_list, list) { |
1697 | tipc_node_write_lock(n); | 1698 | tipc_node_write_lock(n); |
1698 | e = &n->links[bearer_id]; | 1699 | e = &n->links[bearer_id]; |
1699 | if (e->link) | 1700 | if (e->link) { |
1700 | tipc_link_set_tolerance(e->link, b->tolerance, &xmitq); | 1701 | if (prop == TIPC_NLA_PROP_TOL) |
1702 | tipc_link_set_tolerance(e->link, b->tolerance, | ||
1703 | &xmitq); | ||
1704 | else if (prop == TIPC_NLA_PROP_MTU) | ||
1705 | tipc_link_set_mtu(e->link, b->mtu); | ||
1706 | } | ||
1701 | tipc_node_write_unlock(n); | 1707 | tipc_node_write_unlock(n); |
1702 | tipc_bearer_xmit(net, bearer_id, &xmitq, &e->maddr); | 1708 | tipc_bearer_xmit(net, bearer_id, &xmitq, &e->maddr); |
1703 | } | 1709 | } |