diff options
-rw-r--r-- | net/rxrpc/call_object.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/net/rxrpc/call_object.c b/net/rxrpc/call_object.c index 22f9b0d1a138..b0ffbd9664e6 100644 --- a/net/rxrpc/call_object.c +++ b/net/rxrpc/call_object.c | |||
@@ -476,6 +476,16 @@ void rxrpc_release_calls_on_socket(struct rxrpc_sock *rx) | |||
476 | 476 | ||
477 | _enter("%p", rx); | 477 | _enter("%p", rx); |
478 | 478 | ||
479 | while (!list_empty(&rx->to_be_accepted)) { | ||
480 | call = list_entry(rx->to_be_accepted.next, | ||
481 | struct rxrpc_call, accept_link); | ||
482 | list_del(&call->accept_link); | ||
483 | rxrpc_abort_call("SKR", call, 0, RX_CALL_DEAD, ECONNRESET); | ||
484 | rxrpc_send_call_packet(call, RXRPC_PACKET_TYPE_ABORT); | ||
485 | rxrpc_release_call(rx, call); | ||
486 | rxrpc_put_call(call, rxrpc_call_put); | ||
487 | } | ||
488 | |||
479 | while (!list_empty(&rx->sock_calls)) { | 489 | while (!list_empty(&rx->sock_calls)) { |
480 | call = list_entry(rx->sock_calls.next, | 490 | call = list_entry(rx->sock_calls.next, |
481 | struct rxrpc_call, sock_link); | 491 | struct rxrpc_call, sock_link); |