linux_dsm_epyc7002/drivers/net/ethernet/intel
Brett Creeley 4dc926d3a5 ice: Fix Tx timeout when link is toggled on a VF's interface
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@intel.com>
Tested-by: Andrew Bowers <andrewx.bowers@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
2020-05-22 22:10:58 -07:00
..
e1000 Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2020-04-25 20:18:53 -07:00
e1000e e1000e: fix S0ix flows for cable connected case 2020-04-19 11:37:00 -07:00
fm10k net: fm10k: reject unsupported coalescing params 2020-03-12 11:32:36 -07:00
i40e xdp: For Intel AF_XDP drivers add XDP frame_sz 2020-05-14 21:21:56 -07:00
iavf net: iavf: reject unsupported coalescing params 2020-03-12 11:32:36 -07:00
ice ice: Fix Tx timeout when link is toggled on a VF's interface 2020-05-22 22:10:58 -07:00
igb igb: convert to use i2c_new_client_device() 2020-03-26 19:31:21 -07:00
igbvf net: igbvf: reject unsupported coalescing params 2020-03-12 11:32:36 -07:00
igc igc: Remove unused registers 2020-05-19 16:00:00 -07:00
ixgb Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2019-12-22 15:15:05 -08:00
ixgbe xdp: For Intel AF_XDP drivers add XDP frame_sz 2020-05-14 21:21:56 -07:00
ixgbevf ixgbevf: Add XDP frame size to VF driver 2020-05-14 21:21:56 -07:00
e100.c netdev: pass the stuck queue to the timeout handler 2019-12-12 21:38:57 -08:00
Kconfig ice: enable initial devlink support 2020-03-21 00:55:42 -07:00
Makefile igc: Add skeletal frame for Intel(R) 2.5G Ethernet Controller support 2018-10-17 12:14:54 -07:00