From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-16.6 required=3.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH, MAILING_LIST_MULTI,SIGNED_OFF_BY,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT, USER_IN_DEF_DKIM_WL autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id E671AC10F03 for ; Tue, 23 Apr 2019 16:43:32 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id B058F20651 for ; Tue, 23 Apr 2019 16:43:32 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b="vHjzcEHo" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729265AbfDWQnb (ORCPT ); Tue, 23 Apr 2019 12:43:31 -0400 Received: from mail-ua1-f73.google.com ([209.85.222.73]:43424 "EHLO mail-ua1-f73.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727656AbfDWQna (ORCPT ); Tue, 23 Apr 2019 12:43:30 -0400 Received: by mail-ua1-f73.google.com with SMTP id j11so79849uap.10 for ; Tue, 23 Apr 2019 09:43:30 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=date:message-id:mime-version:subject:from:to:cc; bh=dy1kOCzRMScDxok2q+BsfAEcblwKJEKU/rG/dMh3cU4=; b=vHjzcEHoAWGy5Tjz8vCXhrNe0FXmTyHcgQfl0M3DPS4VLS8Sk6u1Qi65E4tYUwGPbt vghqZrPgw6lErWWe0oImj0/+Uz9PNBf5Jg45MOqZFqFxjWOJDj/qh1Bxr+pyG0mwMR8z sx1OZVpMxNkmsdLFbdEc9ei0vi3ZmMJX7l18s/dJYsUNqn+m1zYIEKz2ChseKk2DK1Jn Ly9LL8oB43Li8mu4n6tvQqZ1aij41g7lIKFK6JkISBWx5vjkKqyvzxuoBB3Swn4XdcRa Bq8vWFa+1G92OWBalLgDJ5H1/+CLpImr3tUsHy2McMSaP12GUMwv6MFPwGX8QpBGp0Ea my7Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:date:message-id:mime-version:subject:from:to:cc; bh=dy1kOCzRMScDxok2q+BsfAEcblwKJEKU/rG/dMh3cU4=; b=nteD8vb3ZWyUQSNgE4V7FLzEetP2Ld3fmgXWu5cG0VFZC6gmsMwnzx6aps+IpTqx1I 2A2++zjAiu00U+9Oc0z3CQZAOdpHEE2pXC7TBnf8YjspMo8y5vsZROO6Il+ZjJ98kdN2 yyCGPuGLjT1Ik8lVBciyKXZJSMObO2EIatGFtBUdJd1VFm5U8df9nDvFpJ0mIb7VP6Sc n/QJNOQNCJeJgCNC6UATJbQKmO2bMPK3StT3pfeGY8/p3JJrsr/CNV/w+5fclJF5Qbvt HPRrkkzvToMQIRNzXmbe+9kpOTZ0FqHrtqrJ1918h/z143yYHS8kkTwGtlPsGC69or4s BAsA== X-Gm-Message-State: APjAAAUURYoQbxctv9hcclXx33DDCCDSY2UQ365bujlETggfyTDCai05 sUJPyphg67Iu2thynEBvRLyfAnGMLzHsqg== X-Google-Smtp-Source: APXvYqzWeuDHbPzLCnZdZcNBYDKyx6vX0ZZucvOhh+5LyYDW7drohdCgRseUIgMmp/DqVMtne2DofFGmdX1QQw== X-Received: by 2002:a67:76d7:: with SMTP id r206mr14400511vsc.25.1556037809671; Tue, 23 Apr 2019 09:43:29 -0700 (PDT) Date: Tue, 23 Apr 2019 09:43:26 -0700 Message-Id: <20190423164326.108651-1-edumazet@google.com> Mime-Version: 1.0 X-Mailer: git-send-email 2.21.0.593.g511ec345e18-goog Subject: [PATCH net] l2tp: use rcu_dereference_sk_user_data() in l2tp_udp_encap_recv() From: Eric Dumazet To: "David S . Miller" Cc: netdev , Eric Dumazet , Eric Dumazet , James Chapman Content-Type: text/plain; charset="UTF-8" Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org Canonical way to fetch sk_user_data from an encap_rcv() handler called from UDP stack in rcu protected section is to use rcu_dereference_sk_user_data(), otherwise compiler might read it multiple times. Fixes: d00fa9adc528 ("il2tp: fix races with tunnel socket close") Signed-off-by: Eric Dumazet Cc: James Chapman --- net/l2tp/l2tp_core.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/net/l2tp/l2tp_core.c b/net/l2tp/l2tp_core.c index fed6becc5daf86afa2ad9188bb28e151244bb5a6..aee33d1320184e411dbedff72b5bf5199481e53f 100644 --- a/net/l2tp/l2tp_core.c +++ b/net/l2tp/l2tp_core.c @@ -909,7 +909,7 @@ int l2tp_udp_encap_recv(struct sock *sk, struct sk_buff *skb) { struct l2tp_tunnel *tunnel; - tunnel = l2tp_tunnel(sk); + tunnel = rcu_dereference_sk_user_data(sk); if (tunnel == NULL) goto pass_up; -- 2.21.0.593.g511ec345e18-goog