diff options
Diffstat (limited to 'net/rxrpc/local_object.c')
-rw-r--r-- | net/rxrpc/local_object.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/net/rxrpc/local_object.c b/net/rxrpc/local_object.c index 72a6e12a9304..36587260cabd 100644 --- a/net/rxrpc/local_object.c +++ b/net/rxrpc/local_object.c | |||
@@ -426,11 +426,14 @@ static void rxrpc_local_destroyer(struct rxrpc_local *local) | |||
426 | 426 | ||
427 | _enter("%d", local->debug_id); | 427 | _enter("%d", local->debug_id); |
428 | 428 | ||
429 | local->dead = true; | ||
430 | |||
429 | mutex_lock(&rxnet->local_mutex); | 431 | mutex_lock(&rxnet->local_mutex); |
430 | list_del_init(&local->link); | 432 | list_del_init(&local->link); |
431 | mutex_unlock(&rxnet->local_mutex); | 433 | mutex_unlock(&rxnet->local_mutex); |
432 | 434 | ||
433 | ASSERT(RB_EMPTY_ROOT(&local->client_conns)); | 435 | rxrpc_clean_up_local_conns(local); |
436 | rxrpc_service_connection_reaper(&rxnet->service_conn_reaper); | ||
434 | ASSERT(!local->service); | 437 | ASSERT(!local->service); |
435 | 438 | ||
436 | if (socket) { | 439 | if (socket) { |