]> git.baikalelectronics.ru Git - kernel.git/commit
ice: Gracefully handle reset failure in ice_alloc_vfs()
authorBrett Creeley <brett.creeley@intel.com>
Tue, 16 Apr 2019 17:24:32 +0000 (10:24 -0700)
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>
Thu, 23 May 2019 17:51:54 +0000 (10:51 -0700)
commit2b60a025bd93e43e1fdbd1d933e59875e54d9185
tree347792370ad4fef7110ba9dd5d3e612860dbbd38
parentb2669dc0a776bfdc9637ac15695e4455cdefa3b6
ice: Gracefully handle reset failure in ice_alloc_vfs()

Currently if ice_reset_all_vfs() fails in ice_alloc_vfs() we fail to
free some resources, reset variables, and return an error value.
Fix this by adding another unroll case to free the pf->vf array, set
the pf->num_alloc_vfs to 0, and return an error code.

Without this, if ice_reset_all_vfs() fails in ice_alloc_vfs() we will
not be able to do SRIOV without hard rebooting the system because
rmmod'ing the driver does not work.

Signed-off-by: Brett Creeley <brett.creeley@intel.com>
Signed-off-by: Anirudh Venkataramanan <anirudh.venkataramanan@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_virtchnl_pf.c