linux-stable/drivers/net/ethernet/intel/ixgbe
Maciej Fijalkowski cbf996f52c ixgbe: {dis, en}able irqs in ixgbe_txrx_ring_{dis, en}able
Currently routines that are supposed to toggle state of ring pair do not
take care of associated interrupt with queue vector that these rings
belong to. This causes funky issues such as dead interface due to irq
misconfiguration, as per Pavel's report from Closes: tag.

Add a function responsible for disabling single IRQ in EIMC register and
call this as a very first thing when disabling ring pair during xsk_pool
setup. For enable let's reuse ixgbe_irq_enable_queues(). Besides this,
disable/enable NAPI as first/last thing when dealing with closing or
opening ring pair that xsk_pool is being configured on.

Reported-by: Pavel Vazharov <pavel@x3me.net>
Closes: https://lore.kernel.org/netdev/CAJEV1ijxNyPTwASJER1bcZzS9nMoZJqfR86nu_3jFFVXzZQ4NA@mail.gmail.com/
Fixes: 024aa5800f ("ixgbe: added Rx/Tx ring disable/enable functions")
Signed-off-by: Maciej Fijalkowski <maciej.fijalkowski@intel.com>
Acked-by: Magnus Karlsson <magnus.karlsson@intel.com>
Tested-by: Chandan Kumar Rout <chandanx.rout@intel.com> (A Contingent Worker at Intel)
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
2024-03-01 09:35:19 -08:00
..
ixgbe.h
ixgbe_82598.c ixgbe: Refactor returning internal error codes 2024-01-02 13:46:00 -08:00
ixgbe_82599.c ixgbe: Refactor returning internal error codes 2024-01-02 13:46:00 -08:00
ixgbe_common.c ixgbe: Refactor returning internal error codes 2024-01-02 13:46:00 -08:00
ixgbe_common.h
ixgbe_dcb.c
ixgbe_dcb.h
ixgbe_dcb_82598.c
ixgbe_dcb_82598.h
ixgbe_dcb_82599.c
ixgbe_dcb_82599.h
ixgbe_dcb_nl.c
ixgbe_debugfs.c
ixgbe_ethtool.c ixgbe: Refactor returning internal error codes 2024-01-02 13:46:00 -08:00
ixgbe_fcoe.c intel: legacy: field prep conversion 2023-12-18 11:15:53 -08:00
ixgbe_fcoe.h
ixgbe_ipsec.c
ixgbe_ipsec.h
ixgbe_lib.c
ixgbe_main.c ixgbe: {dis, en}able irqs in ixgbe_txrx_ring_{dis, en}able 2024-03-01 09:35:19 -08:00
ixgbe_mbx.c ixgbe: Refactor returning internal error codes 2024-01-02 13:46:00 -08:00
ixgbe_mbx.h ixgbe: Refactor returning internal error codes 2024-01-02 13:46:00 -08:00
ixgbe_model.h
ixgbe_phy.c ixgbe: Refactor returning internal error codes 2024-01-02 13:46:00 -08:00
ixgbe_phy.h ixgbe: Refactor overtemp event handling 2024-01-02 13:30:26 -08:00
ixgbe_ptp.c
ixgbe_sriov.c ixgbe: Refactor returning internal error codes 2024-01-02 13:46:00 -08:00
ixgbe_sriov.h
ixgbe_sysfs.c
ixgbe_txrx_common.h
ixgbe_type.h ixgbe: Refactor returning internal error codes 2024-01-02 13:46:00 -08:00
ixgbe_x540.c ixgbe: Refactor returning internal error codes 2024-01-02 13:46:00 -08:00
ixgbe_x540.h
ixgbe_x550.c ixgbe: Fix an error handling path in ixgbe_read_iosf_sb_reg_x550() 2024-01-29 10:02:01 -08:00
ixgbe_xsk.c net: Tree wide: Replace xdp_do_flush_map() with xdp_do_flush(). 2023-10-03 07:34:51 -07:00
Makefile