Re: [PATCH net-next v3 2/2] tcp: Free TCP-AO/TCP-MD5 info/keys without RCU
From: Jakub Kicinski <kuba@kernel.org>
Date: 2025-09-03 22:23:33
Also in:
lkml
From: Jakub Kicinski <kuba@kernel.org>
Date: 2025-09-03 22:23:33
Also in:
lkml
On Wed, 3 Sep 2025 18:41:39 +0100 Dmitry Safonov wrote:
quoted
On Sat, 30 Aug 2025 05:31:47 +0100 Dmitry Safonov via B4 Relay wrote:quoted
Now that the destruction of info/keys is delayed until the socket destructor, it's safe to use kfree() without an RCU callback. As either socket was yet in TCP_CLOSE state or the socket refcounter is zero and no one can discover it anymore, it's safe to release memory straight away. Similar thing was possible for twsk already.After this patch the rcu members of struct tcp_ao* seem to no longer be used?Right. I'll remove tcp_ao_info::rcu in v4. For tcp_ao_key it's needed for the regular key rotation, as well as for tcp_md5sig_key.
Hm, maybe I missed something. I did a test allmodconfig build yesterday and while the md5sig_key rcu was still needed, removing the ao_key didn't cause issues. But it was just a quick test I didn't even config kconfig is sane.