Vasily Averin
c1f486e1a9
netfilter: ctnetlink: suspicious RCU usage in ctnetlink_dump_helpinfo
commit c23a9fd209 upstream.
Two patches listed below removed ctnetlink_dump_helpinfo call from under
rcu_read_lock. Now its rcu_dereference generates following warning:
=============================
WARNING: suspicious RCU usage
5.13.0+ #5 Not tainted
-----------------------------
net/netfilter/nf_conntrack_netlink.c:221 suspicious rcu_dereference_check() usage!
other info that might help us debug this:
rcu_scheduler_active = 2, debug_locks = 1
stack backtrace:
CPU: 1 PID: 2251 Comm: conntrack Not tainted 5.13.0+ #5
Call Trace:
dump_stack+0x7f/0xa1
ctnetlink_dump_helpinfo+0x134/0x150 [nf_conntrack_netlink]
ctnetlink_fill_info+0x2c2/0x390 [nf_conntrack_netlink]
ctnetlink_dump_table+0x13f/0x370 [nf_conntrack_netlink]
netlink_dump+0x10c/0x370
__netlink_dump_start+0x1a7/0x260
ctnetlink_get_conntrack+0x1e5/0x250 [nf_conntrack_netlink]
nfnetlink_rcv_msg+0x613/0x993 [nfnetlink]
netlink_rcv_skb+0x50/0x100
nfnetlink_rcv+0x55/0x120 [nfnetlink]
netlink_unicast+0x181/0x260
netlink_sendmsg+0x23f/0x460
sock_sendmsg+0x5b/0x60
__sys_sendto+0xf1/0x160
__x64_sys_sendto+0x24/0x30
do_syscall_64+0x36/0x70
entry_SYSCALL_64_after_hwframe+0x44/0xae
Fixes: 49ca022bcc ("netfilter: ctnetlink: don't dump ct extensions of unconfirmed conntracks")
Fixes: 0b35f6031a ("netfilter: Remove duplicated rcu_read_lock.")
Signed-off-by: Vasily Averin <vvs@virtuozzo.com>
Reviewed-by: Florian Westphal <fw@strlen.de>
Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2021-07-28 11:12:15 +02:00
..
2021-01-12 20:09:14 +01:00
2021-06-10 12:43:50 +02:00
2021-02-23 14:00:32 +01:00
2021-07-28 11:12:15 +02:00
2020-06-03 08:18:10 +02:00
2021-05-22 10:57:41 +02:00
2020-05-20 08:17:01 +02:00
2020-01-04 13:59:59 +01:00
2021-06-30 08:48:49 -04:00
2020-09-09 19:03:08 +02:00
2021-06-10 12:43:50 +02:00
2019-11-24 08:23:32 +01:00
2021-02-03 23:22:22 +01:00
2021-07-20 16:17:36 +02:00
2020-04-02 16:34:32 +02:00
2021-04-28 12:08:42 +02:00
2019-10-11 18:18:39 +02:00
2020-06-20 10:25:10 +02:00
2020-09-09 19:03:08 +02:00
2021-05-22 10:57:39 +02:00
2021-06-03 08:36:11 +02:00
2020-02-28 16:36:16 +01:00
2021-01-12 20:09:14 +01:00
2021-02-23 14:00:32 +01:00