Commit f1b44974 authored by David Howells's avatar David Howells

rxrpc: Fix an overget of the conn bundle when setting up a client conn

When setting up a client connection, a second ref is accidentally obtained
on the connection bundle (we get one when allocating the conn and a second
one when adding the conn to the bundle).

Fix it to only use the ref obtained by rxrpc_alloc_client_connection() and
not to add a second when adding the candidate conn to the bundle.

Fixes: 245500d8 ("rxrpc: Rewrite the client connection manager")
Signed-off-by: default avatarDavid Howells <dhowells@redhat.com>
parent 546a4241
...@@ -433,7 +433,6 @@ static void rxrpc_add_conn_to_bundle(struct rxrpc_bundle *bundle, gfp_t gfp) ...@@ -433,7 +433,6 @@ static void rxrpc_add_conn_to_bundle(struct rxrpc_bundle *bundle, gfp_t gfp)
if (!rxrpc_may_reuse_conn(old)) { if (!rxrpc_may_reuse_conn(old)) {
if (old) if (old)
trace_rxrpc_client(old, -1, rxrpc_client_replace); trace_rxrpc_client(old, -1, rxrpc_client_replace);
candidate->bundle = rxrpc_get_bundle(bundle);
candidate->bundle_shift = shift; candidate->bundle_shift = shift;
bundle->conns[i] = candidate; bundle->conns[i] = candidate;
for (j = 0; j < RXRPC_MAXCALLS; j++) for (j = 0; j < RXRPC_MAXCALLS; j++)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment