aboutsummaryrefslogtreecommitdiffstats
path: root/net/tipc/node.c
diff options
context:
space:
mode:
Diffstat (limited to 'net/tipc/node.c')
-rw-r--r--net/tipc/node.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/net/tipc/node.c b/net/tipc/node.c
index 2717893e9dbe..3469b5d4ed32 100644
--- a/net/tipc/node.c
+++ b/net/tipc/node.c
@@ -835,10 +835,10 @@ static void __tipc_node_link_down(struct tipc_node *n, int *bearer_id,
835static void tipc_node_link_down(struct tipc_node *n, int bearer_id, bool delete) 835static void tipc_node_link_down(struct tipc_node *n, int bearer_id, bool delete)
836{ 836{
837 struct tipc_link_entry *le = &n->links[bearer_id]; 837 struct tipc_link_entry *le = &n->links[bearer_id];
838 struct tipc_media_addr *maddr = NULL;
838 struct tipc_link *l = le->link; 839 struct tipc_link *l = le->link;
839 struct tipc_media_addr *maddr;
840 struct sk_buff_head xmitq;
841 int old_bearer_id = bearer_id; 840 int old_bearer_id = bearer_id;
841 struct sk_buff_head xmitq;
842 842
843 if (!l) 843 if (!l)
844 return; 844 return;
@@ -862,7 +862,8 @@ static void tipc_node_link_down(struct tipc_node *n, int bearer_id, bool delete)
862 tipc_node_write_unlock(n); 862 tipc_node_write_unlock(n);
863 if (delete) 863 if (delete)
864 tipc_mon_remove_peer(n->net, n->addr, old_bearer_id); 864 tipc_mon_remove_peer(n->net, n->addr, old_bearer_id);
865 tipc_bearer_xmit(n->net, bearer_id, &xmitq, maddr); 865 if (!skb_queue_empty(&xmitq))
866 tipc_bearer_xmit(n->net, bearer_id, &xmitq, maddr);
866 tipc_sk_rcv(n->net, &le->inputq); 867 tipc_sk_rcv(n->net, &le->inputq);
867} 868}
868 869