aboutsummaryrefslogtreecommitdiffstats
path: root/net/tipc/link.c
diff options
context:
space:
mode:
Diffstat (limited to 'net/tipc/link.c')
-rw-r--r--net/tipc/link.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/net/tipc/link.c b/net/tipc/link.c
index 02b083e5c219..2a9f44a203eb 100644
--- a/net/tipc/link.c
+++ b/net/tipc/link.c
@@ -864,8 +864,9 @@ int tipc_link_send_buf(struct link *l_ptr, struct sk_buff *buf)
864 864
865 if (unlikely(queue_size >= queue_limit)) { 865 if (unlikely(queue_size >= queue_limit)) {
866 if (imp <= TIPC_CRITICAL_IMPORTANCE) { 866 if (imp <= TIPC_CRITICAL_IMPORTANCE) {
867 return link_schedule_port(l_ptr, msg_origport(msg), 867 link_schedule_port(l_ptr, msg_origport(msg), size);
868 size); 868 buf_discard(buf);
869 return -ELINKCONG;
869 } 870 }
870 buf_discard(buf); 871 buf_discard(buf);
871 if (imp > CONN_MANAGER) { 872 if (imp > CONN_MANAGER) {
@@ -1069,8 +1070,6 @@ again:
1069 if (likely(buf)) { 1070 if (likely(buf)) {
1070 res = link_send_buf_fast(l_ptr, buf, 1071 res = link_send_buf_fast(l_ptr, buf,
1071 &sender->max_pkt); 1072 &sender->max_pkt);
1072 if (unlikely(res < 0))
1073 buf_discard(buf);
1074exit: 1073exit:
1075 tipc_node_unlock(node); 1074 tipc_node_unlock(node);
1076 read_unlock_bh(&tipc_net_lock); 1075 read_unlock_bh(&tipc_net_lock);