]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
ipv4: ip_tunnel: spread netdev_lockdep_set_classes()
authorEric Dumazet <edumazet@google.com>
Tue, 6 Jan 2026 17:24:26 +0000 (17:24 +0000)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 23 Jan 2026 10:21:15 +0000 (11:21 +0100)
commit5584aa64e806282f4f15e61a2ce7f7b62ad81503
tree777233b40c0eca1f892186f4f109bd91b01b2452
parent754cfada1bbcbeeb922e54007c3c3aaaeeacf23e
ipv4: ip_tunnel: spread netdev_lockdep_set_classes()

[ Upstream commit 872ac785e7680dac9ec7f8c5ccd4f667f49d6997 ]

Inspired by yet another syzbot report.

IPv6 tunnels call netdev_lockdep_set_classes() for each tunnel type,
while IPv4 currently centralizes netdev_lockdep_set_classes() call from
ip_tunnel_init().

Make ip_tunnel_init() a macro, so that we have different lockdep
classes per tunnel type.

Fixes: 0bef512012b1 ("net: add netdev_lockdep_set_classes() to virtual drivers")
Reported-by: syzbot+1240b33467289f5ab50b@syzkaller.appspotmail.com
Closes: https://lore.kernel.org/netdev/695d439f.050a0220.1c677c.0347.GAE@google.com/T/#u
Signed-off-by: Eric Dumazet <edumazet@google.com>
Link: https://patch.msgid.link/20260106172426.1760721-1-edumazet@google.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
include/net/ip_tunnels.h
net/ipv4/ip_tunnel.c