All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jakub Kicinski <kuba@kernel.org>
To: Martin KaFai Lau <kafai@fb.com>
Cc: David Howells <dhowells@redhat.com>,
	Hawkins Jiawei <yin31149@gmail.com>,
	"David S. Miller" <davem@davemloft.net>,
	Eric Dumazet <edumazet@google.com>,
	Paolo Abeni <pabeni@redhat.com>,
	Alexei Starovoitov <ast@kernel.org>,
	Daniel Borkmann <daniel@iogearbox.net>,
	Andrii Nakryiko <andrii@kernel.org>,
	Song Liu <songliubraving@fb.com>, Yonghong Song <yhs@fb.com>,
	John Fastabend <john.fastabend@gmail.com>,
	KP Singh <kpsingh@kernel.org>,
	linux-kernel@vger.kernel.org, netdev@vger.kernel.org,
	linux-kernel-mentees@lists.linuxfoundation.org,
	bpf@vger.kernel.org, Jakub Sitnicki <jakub@cloudflare.com>
Subject: Re: [PATCH] net: Fix suspicious RCU usage in bpf_sk_reuseport_detach()
Date: Tue, 16 Aug 2022 18:39:30 -0700	[thread overview]
Message-ID: <20220816183930.2328d46d@kernel.org> (raw)
In-Reply-To: <20220817004319.fd7dekpqeumbvmsh@kafai-mbp>

On Tue, 16 Aug 2022 17:43:19 -0700 Martin KaFai Lau wrote:
> > I like your version because it documents what the lock protecting this
> > field is.
> > 
> > In fact should we also add && sock_owned_by_user(). Martin, WDYT? Would
> > that work for reuseport? Jakub S is fixing l2tp to hold the socket lock
> > while setting this field, yet most places take the callback lock...  
>
> It needs to take a closer look at where the lock_sock() has already
> been acquired and also need to consider the lock ordering with reuseport_lock.
> It probably should work but may need a separate patch to discuss those
> considerations ?

Right, the users of the field with a bit allocated protect the writes
with the callback lock, so we can hard code the check against the
callback lock for now and revisit later if needed.

WARNING: multiple messages have this Message-ID (diff)
From: Jakub Kicinski <kuba@kernel.org>
To: Martin KaFai Lau <kafai@fb.com>
Cc: Song Liu <songliubraving@fb.com>,
	Jakub Sitnicki <jakub@cloudflare.com>,
	Daniel Borkmann <daniel@iogearbox.net>,
	linux-kernel@vger.kernel.org,
	John Fastabend <john.fastabend@gmail.com>,
	Alexei Starovoitov <ast@kernel.org>,
	Andrii Nakryiko <andrii@kernel.org>,
	David Howells <dhowells@redhat.com>,
	Eric Dumazet <edumazet@google.com>,
	netdev@vger.kernel.org, Yonghong Song <yhs@fb.com>,
	KP Singh <kpsingh@kernel.org>,
	Hawkins Jiawei <yin31149@gmail.com>,
	bpf@vger.kernel.org, Paolo Abeni <pabeni@redhat.com>,
	linux-kernel-mentees@lists.linuxfoundation.org,
	"David S. Miller" <davem@davemloft.net>
Subject: Re: [PATCH] net: Fix suspicious RCU usage in bpf_sk_reuseport_detach()
Date: Tue, 16 Aug 2022 18:39:30 -0700	[thread overview]
Message-ID: <20220816183930.2328d46d@kernel.org> (raw)
In-Reply-To: <20220817004319.fd7dekpqeumbvmsh@kafai-mbp>

On Tue, 16 Aug 2022 17:43:19 -0700 Martin KaFai Lau wrote:
> > I like your version because it documents what the lock protecting this
> > field is.
> > 
> > In fact should we also add && sock_owned_by_user(). Martin, WDYT? Would
> > that work for reuseport? Jakub S is fixing l2tp to hold the socket lock
> > while setting this field, yet most places take the callback lock...  
>
> It needs to take a closer look at where the lock_sock() has already
> been acquired and also need to consider the lock ordering with reuseport_lock.
> It probably should work but may need a separate patch to discuss those
> considerations ?

Right, the users of the field with a bit allocated protect the writes
with the callback lock, so we can hard code the check against the
callback lock for now and revisit later if needed.
_______________________________________________
Linux-kernel-mentees mailing list
Linux-kernel-mentees@lists.linuxfoundation.org
https://lists.linuxfoundation.org/mailman/listinfo/linux-kernel-mentees

  reply	other threads:[~2022-08-17  1:39 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-08-16  9:34 [PATCH] net: Fix suspicious RCU usage in bpf_sk_reuseport_detach() David Howells
2022-08-16 10:34 ` Hawkins Jiawei
2022-08-16 10:34   ` Hawkins Jiawei
2022-08-16 13:09   ` David Howells
2022-08-16 13:09     ` David Howells
2022-08-16 21:49     ` Martin KaFai Lau
2022-08-16 21:49       ` Martin KaFai Lau via Linux-kernel-mentees
2022-08-16 18:21   ` Jakub Kicinski
2022-08-16 18:21     ` Jakub Kicinski
2022-08-16 20:01     ` David Howells
2022-08-16 20:01       ` David Howells
2022-08-16 21:16   ` David Howells
2022-08-16 21:16     ` David Howells
2022-08-16 23:44     ` Jakub Kicinski
2022-08-16 23:44       ` Jakub Kicinski
2022-08-17  0:43       ` Martin KaFai Lau
2022-08-17  0:43         ` Martin KaFai Lau via Linux-kernel-mentees
2022-08-17  1:39         ` Jakub Kicinski [this message]
2022-08-17  1:39           ` Jakub Kicinski
2022-08-17  3:00           ` Hawkins Jiawei
2022-08-17  3:00             ` Hawkins Jiawei
2022-08-17 20:55       ` David Howells
2022-08-17 20:55         ` David Howells
2022-08-17 23:42         ` Jakub Kicinski
2022-08-17 23:42           ` Jakub Kicinski

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20220816183930.2328d46d@kernel.org \
    --to=kuba@kernel.org \
    --cc=andrii@kernel.org \
    --cc=ast@kernel.org \
    --cc=bpf@vger.kernel.org \
    --cc=daniel@iogearbox.net \
    --cc=davem@davemloft.net \
    --cc=dhowells@redhat.com \
    --cc=edumazet@google.com \
    --cc=jakub@cloudflare.com \
    --cc=john.fastabend@gmail.com \
    --cc=kafai@fb.com \
    --cc=kpsingh@kernel.org \
    --cc=linux-kernel-mentees@lists.linuxfoundation.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=netdev@vger.kernel.org \
    --cc=pabeni@redhat.com \
    --cc=songliubraving@fb.com \
    --cc=yhs@fb.com \
    --cc=yin31149@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.