linux-stable/drivers/net/ethernet/intel/igb
Jesse Brandeburg eaeace6077 igb: fix netpoll exit with traffic
Oleksandr brought a bug report where netpoll causes trace
messages in the log on igb.

Danielle brought this back up as still occurring, so we'll try
again.

[22038.710800] ------------[ cut here ]------------
[22038.710801] igb_poll+0x0/0x1440 [igb] exceeded budget in poll
[22038.710802] WARNING: CPU: 12 PID: 40362 at net/core/netpoll.c:155 netpoll_poll_dev+0x18a/0x1a0

As Alex suggested, change the driver to return work_done at the
exit of napi_poll, which should be safe to do in this driver
because it is not polling multiple queues in this single napi
context (multiple queues attached to one MSI-X vector). Several
other drivers contain the same simple sequence, so I hope
this will not create new problems.

Fixes: 16eb8815c2 ("igb: Refactor clean_rx_irq to reduce overhead and improve performance")
Reported-by: Oleksandr Natalenko <oleksandr@natalenko.name>
Reported-by: Danielle Ratson <danieller@nvidia.com>
Suggested-by: Alexander Duyck <alexander.duyck@gmail.com>
Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com>
Tested-by: Oleksandr Natalenko <oleksandr@natalenko.name>
Tested-by: Danielle Ratson <danieller@nvidia.com>
Link: https://lore.kernel.org/r/20211123204000.1597971-1-jesse.brandeburg@intel.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
2021-11-25 07:39:31 -08:00
..
e1000_82575.c igb: Fix -Wunused-const-variable warning 2021-06-01 17:00:51 -07:00
e1000_82575.h
e1000_defines.h igb: Redistribute memory for transmit packet buffers when in Qav mode 2021-04-16 10:42:52 -07:00
e1000_hw.h igb: Fix duplicate include guard 2021-03-19 08:47:46 -07:00
e1000_i210.c intel-ethernet: clean up W=1 warnings in kdoc 2020-09-25 16:28:59 -07:00
e1000_i210.h
e1000_mac.c igb: Add counter to i21x doublecheck 2021-07-23 09:08:11 -07:00
e1000_mac.h
e1000_mbx.c intel: clean up mismatched header comments 2021-03-23 11:34:02 -07:00
e1000_mbx.h
e1000_nvm.c ethernet/intel: Convert fallthrough code comments 2020-07-01 13:47:43 -07:00
e1000_nvm.h
e1000_phy.c igb: Fix fall-through warnings for Clang 2021-03-23 11:34:02 -07:00
e1000_phy.h
e1000_regs.h
igb.h igb: Fix XDP with PTP enabled 2021-06-03 08:38:37 -07:00
igb_ethtool.c ethtool: extend coalesce setting uAPI with CQE mode 2021-08-24 07:38:29 -07:00
igb_hwmon.c igb: convert to use i2c_new_client_device() 2020-03-26 19:31:21 -07:00
igb_main.c igb: fix netpoll exit with traffic 2021-11-25 07:39:31 -08:00
igb_ptp.c Merge ra.kernel.org:/pub/scm/linux/kernel/git/netdev/net 2021-06-07 13:01:52 -07:00
Makefile