diff options
| author | Maciej Fijalkowski <maciej.fijalkowski@intel.com> | 2024-02-20 22:45:52 +0100 |
|---|---|---|
| committer | Sasha Levin <sashal@kernel.org> | 2024-03-15 10:48:14 -0400 |
| commit | 484c8e3beb0f3bd001588602c436b7463c9892cf (patch) | |
| tree | dca635f83be79e7d7425bb59a159afb2006c9c66 | |
| parent | 2e60e9531ab9a3118b05b1e76d6acb0c78bed425 (diff) | |
| download | linux-484c8e3beb0f3bd001588602c436b7463c9892cf.tar.gz linux-484c8e3beb0f3bd001588602c436b7463c9892cf.tar.bz2 linux-484c8e3beb0f3bd001588602c436b7463c9892cf.zip | |
i40e: disable NAPI right after disabling irqs when handling xsk_pool
[ Upstream commit d562b11c1eac7d73f4c778b4cbe5468f86b1f20d ]
Disable NAPI before shutting down queues that this particular NAPI
contains so that the order of actions in i40e_queue_pair_disable()
mirrors what we do in i40e_queue_pair_enable().
Fixes: 123cecd427b6 ("i40e: added queue pair disable/enable functions")
Signed-off-by: Maciej Fijalkowski <maciej.fijalkowski@intel.com>
Tested-by: Chandan Kumar Rout <chandanx.rout@intel.com> (A Contingent Worker at Intel)
Acked-by: Magnus Karlsson <magnus.karlsson@intel.com>
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
| -rw-r--r-- | drivers/net/ethernet/intel/i40e/i40e_main.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/ethernet/intel/i40e/i40e_main.c b/drivers/net/ethernet/intel/i40e/i40e_main.c index 9d37c0374c75..ae32e83a6990 100644 --- a/drivers/net/ethernet/intel/i40e/i40e_main.c +++ b/drivers/net/ethernet/intel/i40e/i40e_main.c @@ -13617,9 +13617,9 @@ int i40e_queue_pair_disable(struct i40e_vsi *vsi, int queue_pair) return err; i40e_queue_pair_disable_irq(vsi, queue_pair); + i40e_queue_pair_toggle_napi(vsi, queue_pair, false /* off */); err = i40e_queue_pair_toggle_rings(vsi, queue_pair, false /* off */); i40e_clean_rx_ring(vsi->rx_rings[queue_pair]); - i40e_queue_pair_toggle_napi(vsi, queue_pair, false /* off */); i40e_queue_pair_clean_rings(vsi, queue_pair); i40e_queue_pair_reset_stats(vsi, queue_pair); |
