i40e: notify VF of all types of resets
authorMitch Williams <mitch.a.williams@intel.com>
Wed, 23 Apr 2014 04:50:11 +0000 (04:50 +0000)
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>
Thu, 5 Jun 2014 09:20:19 +0000 (02:20 -0700)
Currently, the PF driver only notifies the VFs for PF reset events.
Instead, notify the VFs for all types of resets, so they can attempt a
graceful reinit.

Change-ID: I03eb7afde25727198ef620f8b4e78bb667a11370
Signed-off-by: Mitch Williams <mitch.a.williams@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
drivers/net/ethernet/intel/i40e/i40e_main.c

index cf67cf45a049c214ee9cdf670f338d7e6220b599..0f9ccc7c8db5d066104be19c7cd9904e0d9a31fe 100644 (file)
@@ -4412,6 +4412,9 @@ void i40e_do_reset(struct i40e_pf *pf, u32 reset_flags)
 
        WARN_ON(in_interrupt());
 
+       if (i40e_check_asq_alive(&pf->hw))
+               i40e_vc_notify_reset(pf);
+
        /* do the biggest reset indicated */
        if (reset_flags & (1 << __I40E_GLOBAL_RESET_REQUESTED)) {
 
@@ -5328,9 +5331,6 @@ static int i40e_prep_for_reset(struct i40e_pf *pf)
 
        dev_dbg(&pf->pdev->dev, "Tearing down internal switch for reset\n");
 
-       if (i40e_check_asq_alive(hw))
-               i40e_vc_notify_reset(pf);
-
        /* quiesce the VSIs and their queues that are not already DOWN */
        i40e_pf_quiesce_all_vsi(pf);