i40e: amortize wait time when disabling lots of VFs
authorJacob Keller <jacob.e.keller@intel.com>
Wed, 19 Apr 2017 13:25:52 +0000 (09:25 -0400)
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>
Sun, 30 Apr 2017 11:18:17 +0000 (04:18 -0700)
commit707d088af33043642692d4522225cb9ca638e7ee
tree1eea496dc8de65299933d90197a0a4b91c4db9ca
parent1f190d9369487c1edfaea4d892231a62ea8206cc
i40e: amortize wait time when disabling lots of VFs

Just as we do in i40e_reset_all_vfs, save some time when freeing VFs by
amortizing the wait time for stopping queues. We can use
i40e_vsi_stop_rings_no_wait() to begin the process of stopping all the
VF rings at once. Then, once we've started the process on each VF we can
begin waiting for the VFs to stop. This helps reduce the total wait time
by a large factor.

Signed-off-by: Jacob Keller <jacob.e.keller@intel.com>
Tested-by: Andrew Bowers <andrewx.bowers@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c