mirror_ubuntu-kernels/drivers/net/ethernet/intel
Maciej Fijalkowski 6c7273a266 ixgbe: xsk: change !netif_carrier_ok() handling in ixgbe_xmit_zc()
Commit c685c69fba ("ixgbe: don't do any AF_XDP zero-copy transmit if
netif is not OK") addressed the ring transient state when
MEM_TYPE_XSK_BUFF_POOL was being configured which in turn caused the
interface to through down/up. Maurice reported that when carrier is not
ok and xsk_pool is present on ring pair, ksoftirqd will consume 100% CPU
cycles due to the constant NAPI rescheduling as ixgbe_poll() states that
there is still some work to be done.

To fix this, do not set work_done to false for a !netif_carrier_ok().

Fixes: c685c69fba ("ixgbe: don't do any AF_XDP zero-copy transmit if netif is not OK")
Reported-by: Maurice Baijens <maurice.baijens@ellips.com>
Tested-by: Maurice Baijens <maurice.baijens@ellips.com>
Signed-off-by: Maciej Fijalkowski <maciej.fijalkowski@intel.com>
Tested-by: Sandeep Penigalapati <sandeep.penigalapati@intel.com>
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2022-03-03 08:26:55 -08:00
..
e1000 e1000: switch to napi_build_skb() 2021-12-28 09:42:25 -08:00
e1000e e1000e: Correct NVM checksum verification flow 2022-02-28 13:43:00 -08:00
fm10k fm10k: Fix syntax errors in comments 2021-12-21 09:17:47 -08:00
i40e Revert "i40e: Fix reset bw limit when DCB enabled with 1 TC" 2022-02-24 09:16:57 -08:00
iavf iavf: Fix __IAVF_RESETTING state usage 2022-02-25 11:37:08 -08:00
ice ice: initialize local variable 'tlv' 2022-02-18 13:28:39 -08:00
igb Merge git://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf-next 2021-12-31 14:35:40 +00:00
igbvf igbvf: Refactor trace 2021-12-21 09:17:47 -08:00
igc igc: igc_write_phy_reg_gpy: drop premature return 2022-02-28 08:48:45 -08:00
ixgb ethtool: extend ringparam setting/getting API with rx_buf_len 2021-11-22 12:31:49 +00:00
ixgbe ixgbe: xsk: change !netif_carrier_ok() handling in ixgbe_xmit_zc() 2022-03-03 08:26:55 -08:00
ixgbevf ixgbevf: Require large buffers for build_skb on 82599VF 2022-02-04 10:23:21 +00:00
e100.c ethtool: extend ringparam setting/getting API with rx_buf_len 2021-11-22 12:31:49 +00:00
Kconfig ice: support crosstimestamping on E822 devices if supported 2021-12-21 09:11:40 -08:00
Makefile