Thread (7 messages) 7 messages, 4 authors, 2025-12-22

Re: [PATCH v2] net: openvswitch: Avoid needlessly taking the RTNL on vport destroy

From: Eelco Chaudron <echaudro@redhat.com>
Date: 2025-12-22 11:44:12


On 22 Dec 2025, at 12:29, Paolo Abeni wrote:
On 12/15/25 1:31 PM, Eelco Chaudron wrote:
quoted
On 15 Dec 2025, at 12:58, Toke Høiland-Jørgensen wrote:
quoted
Eelco Chaudron [off-list ref] writes:
quoted
On 11 Dec 2025, at 12:50, Toke Høiland-Jørgensen wrote:
quoted
The openvswitch teardown code will immediately call
ovs_netdev_detach_dev() in response to a NETDEV_UNREGISTER notification.
It will then start the dp_notify_work workqueue, which will later end up
calling the vport destroy() callback. This callback takes the RTNL to do
another ovs_netdev_detach_port(), which in this case is unnecessary.
This causes extra pressure on the RTNL, in some cases leading to
"unregister_netdevice: waiting for XX to become free" warnings on
teardown.

We can straight-forwardly avoid the extra RTNL lock acquisition by
checking the device flags before taking the lock, and skip the locking
altogether if the IFF_OVS_DATAPATH flag has already been unset.

Fixes: b07c26511e94 ("openvswitch: fix vport-netdev unregister")
Tested-by: Adrian Moreno <redacted>
Signed-off-by: Toke Høiland-Jørgensen <redacted>
Guess the change looks good, but I’m waiting for some feedback from
Adrian to see if this change makes sense.
OK.
quoted
Any luck reproducing the issue it’s supposed to fix?
We got a report from the customer that originally reported it (who had
their own reproducer) that this patch fixes their issue to the point
where they can now delete ~2000 pods/node without triggering the
unregister_netdevice warning at all (where before it triggered at around
~500 pod deletions). So that's encouraging :)
That’s good news; just wanted to make sure we are not chasing a red herring :)

Acked-by: Eelco Chaudron echaudro@redhat.com
@Eelco: your SoB above is lacking the required <> around the email
address. I'm fixing that while applying the patch, but please take care
of it in the next reviews.
Thanks Paolo, no idea what happened here :(
Thanks,

Paolo
  
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help