summary refs log tree commit diff
path: root/net/ethernet
diff options
context:
space:
mode:
authorEric Dumazet <edumazet@google.com>2021-11-23 14:56:08 -0800
committerJakub Kicinski <kuba@kernel.org>2021-11-24 17:21:42 -0800
commit627b94f75b82d13d1530b59155a545fd99d807db (patch)
tree6b0cc9cd576b1c9355b9f1fdf0ab7f3d4ab44e7c /net/ethernet
parentfc1ca3348a74a1afaa7ffebc2b2f2cc149e11278 (diff)
downloadlinux-627b94f75b82d13d1530b59155a545fd99d807db.tar.gz
gro: remove rcu_read_lock/rcu_read_unlock from gro_complete handlers
All gro_complete() handlers are called from napi_gro_complete()
while rcu_read_lock() has been called.

There is no point stacking more rcu_read_lock()

Signed-off-by: Eric Dumazet <edumazet@google.com>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'net/ethernet')
-rw-r--r--net/ethernet/eth.c2
1 files changed, 0 insertions, 2 deletions
diff --git a/net/ethernet/eth.c b/net/ethernet/eth.c
index d4fa2f152efc..ebcc812735a4 100644
--- a/net/ethernet/eth.c
+++ b/net/ethernet/eth.c
@@ -466,14 +466,12 @@ int eth_gro_complete(struct sk_buff *skb, int nhoff)
 	if (skb->encapsulation)
 		skb_set_inner_mac_header(skb, nhoff);
 
-	rcu_read_lock();
 	ptype = gro_find_complete_by_type(type);
 	if (ptype != NULL)
 		err = INDIRECT_CALL_INET(ptype->callbacks.gro_complete,
 					 ipv6_gro_complete, inet_gro_complete,
 					 skb, nhoff + sizeof(*eh));
 
-	rcu_read_unlock();
 	return err;
 }
 EXPORT_SYMBOL(eth_gro_complete);