aboutsummaryrefslogtreecommitdiffstats
path: root/net/tipc/node.c
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2019-03-27 20:37:58 -0400
committerDavid S. Miller <davem@davemloft.net>2019-03-27 20:37:58 -0400
commit356d71e00d278d865f8c7f68adebd6ce4698a7e2 (patch)
tree8cb2dabf7440b56c6dee76b4253210c6b603b98e /net/tipc/node.c
parentdf453700e8d81b1bdafdf684365ee2b9431fb702 (diff)
parent1a9df9e29c2afecf6e3089442d429b377279ca3c (diff)
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
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