ice: Do not always bring up PF VSI in ice_ena_vsi()
authorTony Nguyen <anthony.l.nguyen@intel.com>
Thu, 25 Jul 2019 08:55:35 +0000 (01:55 -0700)
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>
Tue, 20 Aug 2019 21:32:42 +0000 (14:32 -0700)
During rebuild ice_ena_vsi() is called to recover the VSI state.
This function assumes the PF VSI is always to be enabled, however,
it's possible that during reset/rebuild the interface can be
brought down.  If this occurs, we can attempt to bring up the PF
VSI on a downed interface which can lead to various crashes. If
the interface is not running, do not bring up the associated VSI.

Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
Tested-by: Andrew Bowers <andrewx.bowers@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
drivers/net/ethernet/intel/ice/ice_main.c

index 1aa7e06ebbdc29f62eb30a5f2da13ef665c798d8..7805c2abd4ac1d9514073d82f300f01416937602 100644 (file)
@@ -3701,8 +3701,6 @@ static int ice_ena_vsi(struct ice_vsi *vsi, bool locked)
                                err = netd->netdev_ops->ndo_open(netd);
                                rtnl_unlock();
                        }
-               } else {
-                       err = ice_vsi_open(vsi);
                }
        }