Re: [PATCH net 2/2] ovpn: respect peer refcount in CMD_NEW_PEER error path
From: Sabrina Dubroca
Date: Tue May 12 2026 - 11:15:57 EST
2026-05-12, 05:19:13 +0100, David Carlier wrote:
> diff --git a/drivers/net/ovpn/netlink.c b/drivers/net/ovpn/netlink.c
> index 291e2e5bb450..4c66c1ec497e 100644
> --- a/drivers/net/ovpn/netlink.c
> +++ b/drivers/net/ovpn/netlink.c
> @@ -462,10 +462,12 @@ int ovpn_nl_peer_new_doit(struct sk_buff *skb, struct genl_info *info)
> sock_release:
> ovpn_socket_release(peer);
> peer_release:
> - /* release right away because peer was not yet hashed, thus it is not
> - * used in any context
> + /* For UDP, the peer is unreachable until added to the hashtables, so
> + * dropping the initial reference is enough. For TCP, the peer may be
> + * concurrently reachable via sk_user_data->peer until
> + * ovpn_socket_release() detaches; rely on the refcount.
> */
> - ovpn_peer_release(peer);
> + ovpn_peer_put(peer);
>
> return ret;
> }
nit: after this change, ovpn_peer_release() is only used within
peer.c, and can become static.
I think it'd be nicer to do that now with a v2, but if Antonio wants
to pick this patch up directly, the fix LGTM:
Reviewed-by: Sabrina Dubroca <sd@xxxxxxxxxxxxxxx>
--
Sabrina