mirror of
https://github.com/openvswitch/ovs
synced 2025-09-01 14:55:18 +00:00
dpif-netdev: Flush offload rules upon port deletion.
When a port is deleted, flow deletion requests are posted, and the netdev is removed from offload netdevs map. Following flow deletion handling may be done after the netdev has already been removed from the offload netdevs map, so the HW rule is not removed and the data object is not freed (memory leak). Flush offload rules upon port deletion, and disable pending handling of offloads to fix it. Signed-off-by: Eli Britstein <elibr@nvidia.com> Reviewed-by: Gaetan Rivet <gaetanr@nvidia.com> Acked-by: Emma Finn <emma.finn@intel.com> Tested-by: Emma Finn <emma.finn@intel.com> Signed-off-by: Ilya Maximets <i.maximets@ovn.org>
This commit is contained in:
committed by
Ilya Maximets
parent
1178df2d18
commit
62d1c28e9c
@@ -2283,6 +2283,8 @@ static void
|
||||
do_del_port(struct dp_netdev *dp, struct dp_netdev_port *port)
|
||||
OVS_REQUIRES(dp->port_mutex)
|
||||
{
|
||||
netdev_flow_flush(port->netdev);
|
||||
netdev_uninit_flow_api(port->netdev);
|
||||
hmap_remove(&dp->ports, &port->node);
|
||||
seq_change(dp->port_seq);
|
||||
|
||||
|
Reference in New Issue
Block a user