diff options
author | Jakub Kicinski <kuba@kernel.org> | 2024-06-06 22:29:05 +0300 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2024-06-10 15:15:40 +0300 |
commit | 5380d64f8d766576ac5c0f627418b2d0e1d2641f (patch) | |
tree | 077f525dd88346190af4fe3eea504b5c0da8ba3e /net/netlink | |
parent | c917b26e1686b99f18a3c9fbce508a7c264c6706 (diff) | |
download | linux-5380d64f8d766576ac5c0f627418b2d0e1d2641f.tar.xz |
rtnetlink: move rtnl_lock handling out of af_netlink
Now that we have an intermediate layer of code for handling
rtnl-level netlink dump quirks, we can move the rtnl_lock
taking there.
For dump handlers with RTNL_FLAG_DUMP_SPLIT_NLM_DONE we can
avoid taking rtnl_lock just to generate NLM_DONE, once again.
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Reviewed-by: Kuniyuki Iwashima <kuniyu@amazon.com>
Reviewed-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/netlink')
-rw-r--r-- | net/netlink/af_netlink.c | 2 |
1 files changed, 0 insertions, 2 deletions
diff --git a/net/netlink/af_netlink.c b/net/netlink/af_netlink.c index fa9c090cf629..8bbbe75e75db 100644 --- a/net/netlink/af_netlink.c +++ b/net/netlink/af_netlink.c @@ -2330,8 +2330,6 @@ static int netlink_dump(struct sock *sk, bool lock_taken) cb->extack = &extack; - if (cb->flags & RTNL_FLAG_DUMP_UNLOCKED) - extra_mutex = NULL; if (extra_mutex) mutex_lock(extra_mutex); nlk->dump_done_errno = cb->dump(skb, cb); |