summaryrefslogtreecommitdiffstats
path: root/net/tipc/monitor.h
diff options
context:
space:
mode:
authorEric Dumazet <edumazet@google.com>2022-02-16 10:20:37 -0800
committerJakub Kicinski <kuba@kernel.org>2022-02-17 08:41:54 -0800
commitbe6b41c15dc09c067492bd23668763f551747e4e (patch)
tree3326aea689f69ff1392b14ac63d47bc27b0fd044 /net/tipc/monitor.h
parentfaab39f63c1fc4bcdf135690f03bd596b578c67e (diff)
downloadlinux-stable-be6b41c15dc09c067492bd23668763f551747e4e.tar.gz
linux-stable-be6b41c15dc09c067492bd23668763f551747e4e.tar.bz2
linux-stable-be6b41c15dc09c067492bd23668763f551747e4e.zip
ipv6/addrconf: ensure addrconf_verify_rtnl() has completed
Before freeing the hash table in addrconf_exit_net(), we need to make sure the work queue has completed, or risk NULL dereference or UAF. Thus, use cancel_delayed_work_sync() to enforce this. We do not hold RTNL in addrconf_exit_net(), making this safe. Fixes: 8805d13ff1b2 ("ipv6/addrconf: use one delayed work per netns") Signed-off-by: Eric Dumazet <edumazet@google.com> Reported-by: syzbot <syzkaller@googlegroups.com> Reviewed-by: David Ahern <dsahern@kernel.org> Link: https://lore.kernel.org/r/20220216182037.3742-1-eric.dumazet@gmail.com Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Diffstat (limited to 'net/tipc/monitor.h')
0 files changed, 0 insertions, 0 deletions