[Intel-wired-lan] [PATCH S43 03/15] ice: Fix Tx timeout when link is toggled on a VF's interface

Bowers, AndrewX andrewx.bowers at intel.com
Fri May 22 19:30:08 UTC 2020


> -----Original Message-----
> From: Intel-wired-lan <intel-wired-lan-bounces at osuosl.org> On Behalf Of
> Tony Nguyen
> Sent: Friday, May 15, 2020 5:37 PM
> To: intel-wired-lan at lists.osuosl.org
> Subject: [Intel-wired-lan] [PATCH S43 03/15] ice: Fix Tx timeout when link is
> toggled on a VF's interface
> 
> From: Brett Creeley <brett.creeley at intel.com>
> 
> Currently if the iavf is loaded and a VF link transitions from up to down to up
> again a Tx timeout will be triggered. This happens because Tx/Rx queue
> interrupts are only enabled when receiving the
> VIRTCHNL_OP_CONFIG_MAP_IRQ message, which happens on reset or
> initial iavf driver load, but not when bringing link up. This is problematic
> because they are disabled on the VIRTCHNL_OP_DISABLE_QUEUES message,
> which is part of bringing a VF's link down. However, they are not enabled on
> the VIRTCHNL_OP_ENABLE_QUEUES message, which is part of bringing a
> VF's link up.
> 
> Fix this by re-enabling the VF's Rx and Tx queue interrupts when they were
> previously configured. This is done by first checking to make sure the
> previous value in QINT_[R|T]QCTL.MSIX_INDX is not 0, which is used to
> represent the OICR in the VF's interrupt space. If the MSIX_INDX is non-zero
> then enable the interrupt by setting the QINT_[R|T]CTL.CAUSE_ENA bit to 1.
> 
> Signed-off-by: Brett Creeley <brett.creeley at intel.com>
> ---
>  .../net/ethernet/intel/ice/ice_virtchnl_pf.c  | 48 +++++++++++++++++++
>  1 file changed, 48 insertions(+)

Tested-by: Andrew Bowers <andrewx.bowers at intel.com>




More information about the Intel-wired-lan mailing list