From: James Chapman Date: Thu, 20 Jun 2024 11:22:41 +0000 (+0100) Subject: l2tp: don't use sk_user_data in l2tp_udp_encap_err_recv X-Git-Tag: v6.11-rc1~163^2~156^2~3 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=c37e0138ca5f3be6b69c3020470aecb94eb5d773;p=thirdparty%2Fkernel%2Flinux.git l2tp: don't use sk_user_data in l2tp_udp_encap_err_recv If UDP sockets are aliased, sk might be the wrong socket. There's no benefit to using sk_user_data to do some checks on the associated tunnel context. Just report the error anyway, like udp core does. Signed-off-by: James Chapman Reviewed-by: Tom Parkin Signed-off-by: David S. Miller --- diff --git a/net/l2tp/l2tp_core.c b/net/l2tp/l2tp_core.c index 2c6378a9f3848..cbc5de1373cd7 100644 --- a/net/l2tp/l2tp_core.c +++ b/net/l2tp/l2tp_core.c @@ -1030,12 +1030,6 @@ EXPORT_SYMBOL_GPL(l2tp_udp_encap_recv); static void l2tp_udp_encap_err_recv(struct sock *sk, struct sk_buff *skb, int err, __be16 port, u32 info, u8 *payload) { - struct l2tp_tunnel *tunnel; - - tunnel = rcu_dereference_sk_user_data(sk); - if (!tunnel || tunnel->fd < 0) - return; - sk->sk_err = err; sk_error_report(sk);