diff options
-rw-r--r-- | net/tipc/server.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/net/tipc/server.c b/net/tipc/server.c index bbaa8f56024a..646a930eefbf 100644 --- a/net/tipc/server.c +++ b/net/tipc/server.c | |||
@@ -427,10 +427,12 @@ int tipc_conn_sendmsg(struct tipc_server *s, int conid, | |||
427 | list_add_tail(&e->list, &con->outqueue); | 427 | list_add_tail(&e->list, &con->outqueue); |
428 | spin_unlock_bh(&con->outqueue_lock); | 428 | spin_unlock_bh(&con->outqueue_lock); |
429 | 429 | ||
430 | if (test_bit(CF_CONNECTED, &con->flags)) | 430 | if (test_bit(CF_CONNECTED, &con->flags)) { |
431 | if (!queue_work(s->send_wq, &con->swork)) | 431 | if (!queue_work(s->send_wq, &con->swork)) |
432 | conn_put(con); | 432 | conn_put(con); |
433 | 433 | } else { | |
434 | conn_put(con); | ||
435 | } | ||
434 | return 0; | 436 | return 0; |
435 | } | 437 | } |
436 | 438 | ||