diff options
author | 2025-04-01 09:34:44 -0700 | |
---|---|---|
committer | 2025-04-03 15:32:08 -0700 | |
commit | 8965c160b8f7333df895321c8aa6bad4a7175f2b (patch) | |
tree | 54422265d2d6fd6448a6403568b87d2184b62447 /net/core/dev.c | |
parent | net: hold instance lock during NETDEV_REGISTER/UP (diff) | |
download | wireguard-linux-8965c160b8f7333df895321c8aa6bad4a7175f2b.tar.xz wireguard-linux-8965c160b8f7333df895321c8aa6bad4a7175f2b.zip |
net: use netif_disable_lro in ipv6_add_dev
ipv6_add_dev might call dev_disable_lro which unconditionally grabs
instance lock, so it will deadlock during NETDEV_REGISTER. Switch
to netif_disable_lro.
Make sure all callers hold the instance lock as well.
Cc: Cosmin Ratiu <cratiu@nvidia.com>
Fixes: ad7c7b2172c3 ("net: hold netdev instance lock during sysfs operations")
Signed-off-by: Stanislav Fomichev <sdf@fomichev.me>
Link: https://patch.msgid.link/20250401163452.622454-4-sdf@fomichev.me
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'net/core/dev.c')
-rw-r--r-- | net/core/dev.c | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/net/core/dev.c b/net/core/dev.c index ce6612106e60..0608605cfc24 100644 --- a/net/core/dev.c +++ b/net/core/dev.c @@ -1771,6 +1771,7 @@ void netif_disable_lro(struct net_device *dev) netdev_unlock_ops(lower_dev); } } +EXPORT_IPV6_MOD(netif_disable_lro); /** * dev_disable_gro_hw - disable HW Generic Receive Offload on a device |