ice: report link down for VF when PF's queues are not enabled
authorLukasz Czapnik <lukasz.czapnik@intel.com>
Tue, 3 Sep 2019 08:31:01 +0000 (01:31 -0700)
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>
Thu, 5 Sep 2019 15:13:41 +0000 (08:13 -0700)
commitc61d2342349fe01687db70bcbec91766596daef4
tree728ea439d3c77393a596a400c2bd9831fceb7578
parent29d42f1f3ae5624b5344aefccb5081eb9c49d44f
ice: report link down for VF when PF's queues are not enabled

This is port of a fix from i40e commit 2ad1274fa35a ("i40e: don't
report link up for a VF who hasn't enabled queues")

Older VF drivers do not respond well to receiving a link
up notification before queues are enabled. This can cause their state
machine to think that it is safe to send traffic. This results in a Tx
hang on the VF.

Record whether the PF has actually enabled queues for the VF. When
reporting link status, always report link down if the queues aren't
enabled. In this way, the VF driver will never receive a link up
notification until after its queues are enabled.

Signed-off-by: Lukasz Czapnik <lukasz.czapnik@intel.com>
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_virtchnl_pf.c