From 7ab8b0b432cf5110624858e23ef264982e542f17 Mon Sep 17 00:00:00 2001 From: Ajit Khaparde Date: Fri, 11 Feb 2011 13:35:56 +0000 Subject: [PATCH] be2net: Cleanup the VF interface handles The PF needs to cleanup all the interface handles that it created for the VFs. Signed-off-by: Ajit Khaparde Signed-off-by: David S. Miller --- drivers/net/benet/be_main.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/drivers/net/benet/be_main.c b/drivers/net/benet/be_main.c index 48eef9e2ed9..fc119d1f542 100644 --- a/drivers/net/benet/be_main.c +++ b/drivers/net/benet/be_main.c @@ -2340,6 +2340,8 @@ do_none: static int be_clear(struct be_adapter *adapter) { + int vf; + if (be_physfn(adapter) && adapter->sriov_enabled) be_vf_eth_addr_rem(adapter); @@ -2347,6 +2349,13 @@ static int be_clear(struct be_adapter *adapter) be_rx_queues_destroy(adapter); be_tx_queues_destroy(adapter); + if (be_physfn(adapter) && adapter->sriov_enabled) + for (vf = 0; vf < num_vfs; vf++) + if (adapter->vf_cfg[vf].vf_if_handle) + be_cmd_if_destroy(adapter, + adapter->vf_cfg[vf].vf_if_handle, + vf + 1); + be_cmd_if_destroy(adapter, adapter->if_handle, 0); /* tell fw we're done with firing cmds */ -- 2.39.5