Thread (22 messages) 22 messages, 4 authors, 2025-10-17

Re: [PATCH v3 3/8] net/handshake: Ensure the request is destructed on completion

From: Hannes Reinecke <hare@suse.de>
Date: 2025-10-06 06:16:55
Also in: linux-doc, linux-nfs, linux-nvme, lkml

On 10/3/25 06:31, alistair23@gmail.com wrote:
quoted hunk ↗ jump to hunk
From: Alistair Francis <redacted>

To avoid future handshake_req_hash_add() calls failing with EEXIST when
performing a KeyUpdate let's make sure the old request is destructed
as part of the completion.

Signed-off-by: Alistair Francis <redacted>
---
v3:
  - New patch

  net/handshake/request.c | 2 ++
  1 file changed, 2 insertions(+)
diff --git a/net/handshake/request.c b/net/handshake/request.c
index 0d1c91c80478..194725a8aaca 100644
--- a/net/handshake/request.c
+++ b/net/handshake/request.c
@@ -311,6 +311,8 @@ void handshake_complete(struct handshake_req *req, unsigned int status,
  		/* Handshake request is no longer pending */
  		sock_put(sk);
  	}
+
+	handshake_sk_destruct_req(sk);
  }
  EXPORT_SYMBOL_IF_KUNIT(handshake_complete);
  
Curious.
Why do we need it now? We had been happily using the handshake mechanism 
for quite some time now, so who had been destroying the request without
this patch?

Cheers,

Hannes
-- 
Dr. Hannes Reinecke                  Kernel Storage Architect
hare@suse.de                                +49 911 74053 688
SUSE Software Solutions GmbH, Frankenstr. 146, 90461 Nürnberg
HRB 36809 (AG Nürnberg), GF: I. Totev, A. McDonald, W. Knoblich
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help