浏览代码

tipc: correct initialization of skb list

We change the initialization of the skb transmit buffer queues
in the functions tipc_bcast_xmit() and tipc_rcast_xmit() to also
initialize their spinlocks. This is needed because we may, during
error conditions, need to call skb_queue_purge() on those queues
further down the stack.

Signed-off-by: Jon Maloy <jon.maloy@ericsson.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Jon Maloy 7 年之前
父节点
当前提交
3382605fd8
共有 1 个文件被更改,包括 2 次插入2 次删除
  1. 2 2
      net/tipc/bcast.c

+ 2 - 2
net/tipc/bcast.c

@@ -233,7 +233,7 @@ static int tipc_bcast_xmit(struct net *net, struct sk_buff_head *pkts,
 	struct sk_buff_head xmitq;
 	struct sk_buff_head xmitq;
 	int rc = 0;
 	int rc = 0;
 
 
-	__skb_queue_head_init(&xmitq);
+	skb_queue_head_init(&xmitq);
 	tipc_bcast_lock(net);
 	tipc_bcast_lock(net);
 	if (tipc_link_bc_peers(l))
 	if (tipc_link_bc_peers(l))
 		rc = tipc_link_xmit(l, pkts, &xmitq);
 		rc = tipc_link_xmit(l, pkts, &xmitq);
@@ -263,7 +263,7 @@ static int tipc_rcast_xmit(struct net *net, struct sk_buff_head *pkts,
 	u32 dst, selector;
 	u32 dst, selector;
 
 
 	selector = msg_link_selector(buf_msg(skb_peek(pkts)));
 	selector = msg_link_selector(buf_msg(skb_peek(pkts)));
-	__skb_queue_head_init(&_pkts);
+	skb_queue_head_init(&_pkts);
 
 
 	list_for_each_entry_safe(n, tmp, &dests->list, list) {
 	list_for_each_entry_safe(n, tmp, &dests->list, list) {
 		dst = n->value;
 		dst = n->value;