Thread (5 messages) 5 messages, 2 authors, 2021-03-30

Re: [PATCH net-next] mld: add missing rtnl_lock() in do_ipv6_getsockopt()

flat view

From: Taehee Yoo <ap420073@gmail.com>
Date: 2021-03-30 16:14:19

On 3/31/21 1:08 AM, Eric Dumazet wrote:
On Tue, Mar 30, 2021 at 6:02 PM Taehee Yoo [off-list ref] wrote:
quoted
On 3/31/21 12:40 AM, Eric Dumazet wrote:
  > This seems a serious regression compared to old code (in net tree)
  >
  > Have you added RTNL requirement in all this code ?
  >
  > We would like to use RTNL only if strictly needed.

Yes, I agree with you.
This patchset actually relies on existed RTNL, which is
setsockopt_needs_rtnl().
And remained RTNL was replaced by mc_lock.
So, this patchset actually doesn't add new RTNL except in this case.

Fortunately, I think It can be replaced by RCU because,
1. ip6_mc_msfget() doesn't need the sleepable functions.
2. It is not the write critical section.
So, RCU can be used instead of RTNL for ip6_mc_msfget().
How do you think about it?
Yes please, do not add RTNL here if we can avoid it.
Okay, I will send a new patch.
Otherwise some applications will slow down the whole stack, even with
different containers/netns.

(There is a single RTNL for the whole machine)
Thanks a lot for the review!
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help