flow_dissector: use RCU protection to fetch dev_net()
authorEric Dumazet <edumazet@google.com>
Wed, 5 Feb 2025 15:51:17 +0000 (15:51 +0000)
committerJakub Kicinski <kuba@kernel.org>
Fri, 7 Feb 2025 00:14:15 +0000 (16:14 -0800)
commitafec62cd0a4191cde6dd3a75382be4d51a38ce9b
tree30a1080ffa04fdfd490e05ce0364a160cafbac22
parent4b8474a0951e605d2a27a2c483da4eb4b8c63760
flow_dissector: use RCU protection to fetch dev_net()

__skb_flow_dissect() can be called from arbitrary contexts.

It must extend its RCU protection section to include
the call to dev_net(), which can become dev_net_rcu().

This makes sure the net structure can not disappear under us.

Fixes: 9b52e3f267a6 ("flow_dissector: handle no-skb use case")
Signed-off-by: Eric Dumazet <edumazet@google.com>
Reviewed-by: Kuniyuki Iwashima <kuniyu@amazon.com>
Link: https://patch.msgid.link/20250205155120.1676781-10-edumazet@google.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
net/core/flow_dissector.c