From: Jakub Kicinski <kuba@kernel.org>
To: Adrian Moreno <amorenoz@redhat.com>
Cc: netdev@vger.kernel.org, Aaron Conole <aconole@redhat.com>,
Eelco Chaudron <echaudro@redhat.com>,
Ilya Maximets <i.maximets@ovn.org>,
"David S. Miller" <davem@davemloft.net>,
Eric Dumazet <edumazet@google.com>,
Paolo Abeni <pabeni@redhat.com>, Simon Horman <horms@kernel.org>,
dev@openvswitch.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH net-next v1] net: openvswitch: decouple flow_table from ovs_mutex
Date: Fri, 13 Mar 2026 12:35:35 -0700 [thread overview]
Message-ID: <20260313123535.4b2741b8@kernel.org> (raw)
In-Reply-To: <20260313173114.1220551-1-amorenoz@redhat.com>
On Fri, 13 Mar 2026 18:31:12 +0100 Adrian Moreno wrote:
> Currently the entire ovs module is write-protected using the global
> ovs_mutex. While this simple approach works fine for control-plane
> operations (such as vport configurations), requiring the global mutex
> for flow modifications can be problematic.
YNL selftest for ovs seems to trigger this:
[ 88.995118][ T50] =============================
[ 88.995287][ T50] WARNING: suspicious RCU usage
[ 88.995448][ T50] 7.0.0-rc3-virtme #1 Not tainted
[ 88.995630][ T50] -----------------------------
[ 88.995788][ T50] net/openvswitch/datapath.c:2666 RCU-list traversed in non-reader section!!
[ 88.996122][ T50]
[ 88.996122][ T50] other info that might help us debug this:
[ 88.996122][ T50]
[ 88.996388][ T50]
[ 88.996388][ T50] rcu_scheduler_active = 2, debug_locks = 1
[ 88.996640][ T50] 3 locks held by kworker/2:1/50:
[ 88.996800][ T50] #0: ff11000001139b48 ((wq_completion)events){+.+.}-{0:0}, at: process_one_work+0xcb4/0x1390
[ 88.997092][ T50] #1: ffa000000036fd10 ((work_completion)(&(&ovs_net->masks_rebalance)->work)){+.+.}-{0:0}, at: process_one_work+0xd16/0x1390
[ 88.997420][ T50] #2: ffffffffc08038e8 (ovs_mutex){+.+.}-{4:4}, at: ovs_dp_masks_rebalance+0x29/0x270 [openvswitch]
[ 88.997707][ T50]
[ 88.997707][ T50] stack backtrace:
[ 88.997898][ T50] CPU: 2 UID: 0 PID: 50 Comm: kworker/2:1 Not tainted 7.0.0-rc3-virtme #1 PREEMPT(full)
[ 88.997903][ T50] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011
[ 88.997904][ T50] Workqueue: events ovs_dp_masks_rebalance [openvswitch]
[ 88.997911][ T50] Call Trace:
[ 88.997914][ T50] <TASK>
[ 88.997916][ T50] dump_stack_lvl+0x6f/0xa0
[ 88.997921][ T50] lockdep_rcu_suspicious.cold+0x4f/0xad
[ 88.997928][ T50] ovs_dp_masks_rebalance+0x226/0x270 [openvswitch]
[ 88.997933][ T50] process_one_work+0xd57/0x1390
[ 88.997940][ T50] ? pwq_dec_nr_in_flight+0x700/0x700
[ 88.997942][ T50] ? lock_acquire.part.0+0xbc/0x260
[ 88.997950][ T50] worker_thread+0x4d6/0xd40
[ 88.997954][ T50] ? rescuer_thread+0x1330/0x1330
[ 88.997956][ T50] ? __kthread_parkme+0xb3/0x200
[ 88.997960][ T50] ? rescuer_thread+0x1330/0x1330
[ 88.997962][ T50] kthread+0x30f/0x3f0
[ 88.997964][ T50] ? trace_irq_enable.constprop.0+0x13c/0x190
[ 88.997967][ T50] ? kthread_affine_node+0x150/0x150
[ 88.997970][ T50] ret_from_fork+0x472/0x6b0
[ 88.997974][ T50] ? arch_exit_to_user_mode_prepare.isra.0+0x140/0x140
[ 88.997977][ T50] ? __switch_to+0x538/0xcf0
[ 88.997980][ T50] ? kthread_affine_node+0x150/0x150
[ 88.997983][ T50] ret_from_fork_asm+0x11/0x20
[ 88.997991][ T50] </TASK>
https://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next.git/tree/tools/net/ynl/tests/ovs.c
next prev parent reply other threads:[~2026-03-13 19:35 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-03-13 17:31 [PATCH net-next v1] net: openvswitch: decouple flow_table from ovs_mutex Adrian Moreno
2026-03-13 19:35 ` Jakub Kicinski [this message]
2026-03-16 12:01 ` Adrián Moreno
2026-03-14 18:32 ` [syzbot ci] " syzbot ci
2026-03-17 13:30 ` [PATCH net-next v1] " kernel test robot
2026-03-18 14:09 ` kernel test robot
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260313123535.4b2741b8@kernel.org \
--to=kuba@kernel.org \
--cc=aconole@redhat.com \
--cc=amorenoz@redhat.com \
--cc=davem@davemloft.net \
--cc=dev@openvswitch.org \
--cc=echaudro@redhat.com \
--cc=edumazet@google.com \
--cc=horms@kernel.org \
--cc=i.maximets@ovn.org \
--cc=linux-kernel@vger.kernel.org \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox