diff options
Diffstat (limited to 'net/tipc/name_distr.c')
-rw-r--r-- | net/tipc/name_distr.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/net/tipc/name_distr.c b/net/tipc/name_distr.c index 974a73f3d876..8465263246c3 100644 --- a/net/tipc/name_distr.c +++ b/net/tipc/name_distr.c | |||
@@ -135,18 +135,18 @@ void named_cluster_distribute(struct sk_buff *buf) | |||
135 | 135 | ||
136 | rcu_read_lock(); | 136 | rcu_read_lock(); |
137 | list_for_each_entry_rcu(n_ptr, &tipc_node_list, list) { | 137 | list_for_each_entry_rcu(n_ptr, &tipc_node_list, list) { |
138 | spin_lock_bh(&n_ptr->lock); | 138 | tipc_node_lock(n_ptr); |
139 | l_ptr = n_ptr->active_links[n_ptr->addr & 1]; | 139 | l_ptr = n_ptr->active_links[n_ptr->addr & 1]; |
140 | if (l_ptr) { | 140 | if (l_ptr) { |
141 | buf_copy = skb_copy(buf, GFP_ATOMIC); | 141 | buf_copy = skb_copy(buf, GFP_ATOMIC); |
142 | if (!buf_copy) { | 142 | if (!buf_copy) { |
143 | spin_unlock_bh(&n_ptr->lock); | 143 | tipc_node_unlock(n_ptr); |
144 | break; | 144 | break; |
145 | } | 145 | } |
146 | msg_set_destnode(buf_msg(buf_copy), n_ptr->addr); | 146 | msg_set_destnode(buf_msg(buf_copy), n_ptr->addr); |
147 | __tipc_link_xmit(l_ptr, buf_copy); | 147 | __tipc_link_xmit(l_ptr, buf_copy); |
148 | } | 148 | } |
149 | spin_unlock_bh(&n_ptr->lock); | 149 | tipc_node_unlock(n_ptr); |
150 | } | 150 | } |
151 | rcu_read_unlock(); | 151 | rcu_read_unlock(); |
152 | 152 | ||