Tonghao Zhang
4acc0b18f7
net: openvswitch: ovs_ct_exit to be done under ovs_lock
[ Upstream commit 27de77cec985233bdf6546437b9761853265c505 ]
syzbot wrote:
| =============================
| WARNING: suspicious RCU usage
| 5.7.0-rc1+ #45 Not tainted
| -----------------------------
| net/openvswitch/conntrack.c:1898 RCU-list traversed in non-reader section!!
|
| other info that might help us debug this:
| rcu_scheduler_active = 2, debug_locks = 1
| ...
|
| stack backtrace:
| Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS rel-1.12.0-0-ga698c8995f-prebuilt.qemu.org 04/01/2014
| Workqueue: netns cleanup_net
| Call Trace:
| ...
| ovs_ct_exit
| ovs_exit_net
| ops_exit_list.isra.7
| cleanup_net
| process_one_work
| worker_thread
To avoid that warning, invoke the ovs_ct_exit under ovs_lock and add
lockdep_ovsl_is_held as optional lockdep expression.
Link: https://lore.kernel.org/lkml/000000000000e642a905a0cbee6e@google.com
Fixes: 11efd5cb04 ("openvswitch: Support conntrack zone limit")
Cc: Pravin B Shelar <pshelar@ovn.org>
Cc: Yi-Hung Wei <yihung.wei@gmail.com>
Reported-by: syzbot+7ef50afd3a211f879112@syzkaller.appspotmail.com
Signed-off-by: Tonghao Zhang <xiangxia.m.yue@gmail.com>
Acked-by: Pravin B Shelar <pshelar@ovn.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
|
2020-04-29 16:33:08 +02:00 |
| .. |
|
actions.c
|
net: Fixed updating of ethertype in skb_mpls_push()
|
2019-12-18 16:08:56 +01:00 |
|
conntrack.c
|
net: openvswitch: ovs_ct_exit to be done under ovs_lock
|
2020-04-29 16:33:08 +02:00 |
|
conntrack.h
|
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 295
|
2019-06-05 17:36:38 +02:00 |
|
datapath.c
|
net: openvswitch: ovs_ct_exit to be done under ovs_lock
|
2020-04-29 16:33:08 +02:00 |
|
datapath.h
|
net: openvswitch: Set OvS recirc_id from tc chain index
|
2019-09-06 14:59:18 +02:00 |
|
dp_notify.c
|
net: openvswitch: use netif_ovs_is_port() instead of opencode
|
2019-07-08 15:53:25 -07:00 |
|
flow.c
|
net: openvswitch: Set OvS recirc_id from tc chain index
|
2019-09-06 14:59:18 +02:00 |
|
flow.h
|
openvswitch: Properly set L4 keys on "later" IP fragments
|
2019-08-28 14:53:51 -07:00 |
|
flow_netlink.c
|
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 269
|
2019-06-05 17:30:29 +02:00 |
|
flow_netlink.h
|
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 269
|
2019-06-05 17:30:29 +02:00 |
|
flow_table.c
|
net: openvswitch: rename flow_stats to sw_flow_stats
|
2019-07-19 21:27:45 -07:00 |
|
flow_table.h
|
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 269
|
2019-06-05 17:30:29 +02:00 |
|
Kconfig
|
treewide: Add SPDX license identifier - Makefile/Kconfig
|
2019-05-21 10:50:46 +02:00 |
|
Makefile
|
|
|
|
meter.c
|
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 206
|
2019-05-30 11:29:53 -07:00 |
|
meter.h
|
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 206
|
2019-05-30 11:29:53 -07:00 |
|
vport-geneve.c
|
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 152
|
2019-05-30 11:26:32 -07:00 |
|
vport-gre.c
|
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 269
|
2019-06-05 17:30:29 +02:00 |
|
vport-internal_dev.c
|
net: openvswitch: free vport unless register_netdevice() succeeds
|
2019-10-22 14:45:08 -07:00 |
|
vport-internal_dev.h
|
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 269
|
2019-06-05 17:30:29 +02:00 |
|
vport-netdev.c
|
net: openvswitch: use netif_ovs_is_port() instead of opencode
|
2019-07-08 15:53:25 -07:00 |
|
vport-netdev.h
|
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 269
|
2019-06-05 17:30:29 +02:00 |
|
vport-vxlan.c
|
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 269
|
2019-06-05 17:30:29 +02:00 |
|
vport.c
|
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
|
2019-06-17 20:20:36 -07:00 |
|
vport.h
|
treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 269
|
2019-06-05 17:30:29 +02:00 |