aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMitch Williams <mitch.a.williams@intel.com>2014-03-06 03:59:52 -0500
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>2014-03-21 04:31:47 -0400
commitc89a9e00f90cea4d824ff5890c86332a6687f830 (patch)
tree3b5ae7ac69440e1f79c231ae83b47031a93ec2ff
parent0b67584f8047cf5abdad23a4ee1558c488684752 (diff)
i40evf: don't shut down admin queue on error
If the driver encounters an error while communicating with the PF driver, don't just shut down the admin queue unconditionally. The PF may be delayed, and shutting down the admin queue causes it to fail completely. If this happens, the VF will never complete initialization. Change-ID: I6192e9d8caeefb738428c3597fa2f54fa400ce7f Signed-off-by: Mitch Williams <mitch.a.williams@intel.com> Signed-off-by: Catherine Sullivan <catherine.sullivan@intel.com> Tested-by: Sibai Li <sibai.li@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
-rw-r--r--drivers/net/ethernet/intel/i40evf/i40evf_main.c2
1 files changed, 0 insertions, 2 deletions
diff --git a/drivers/net/ethernet/intel/i40evf/i40evf_main.c b/drivers/net/ethernet/intel/i40evf/i40evf_main.c
index d381bcc4ea9f..4d547abc59dc 100644
--- a/drivers/net/ethernet/intel/i40evf/i40evf_main.c
+++ b/drivers/net/ethernet/intel/i40evf/i40evf_main.c
@@ -2133,8 +2133,6 @@ err_alloc:
2133 kfree(adapter->vf_res); 2133 kfree(adapter->vf_res);
2134 adapter->vf_res = NULL; 2134 adapter->vf_res = NULL;
2135err: 2135err:
2136 if (hw->aq.asq.count)
2137 i40evf_shutdown_adminq(hw); /* ignore error */
2138 /* Things went into the weeds, so try again later */ 2136 /* Things went into the weeds, so try again later */
2139 if (++adapter->aq_wait_count > I40EVF_AQ_MAX_ERR) { 2137 if (++adapter->aq_wait_count > I40EVF_AQ_MAX_ERR) {
2140 dev_err(&pdev->dev, "Failed to communicate with PF; giving up.\n"); 2138 dev_err(&pdev->dev, "Failed to communicate with PF; giving up.\n");