linux_dsm_epyc7002/drivers/net/ethernet/intel
Maxim Mikityanskiy c0fdccfd22 net/ixgbe: Fix concurrency issues between config flow and XSK
Use synchronize_rcu to wait until the XSK wakeup function finishes
before destroying the resources it uses:

1. ixgbe_down already calls synchronize_rcu after setting __IXGBE_DOWN.

2. After switching the XDP program, call synchronize_rcu to let
ixgbe_xsk_wakeup exit before the XDP program is freed.

3. Changing the number of channels brings the interface down.

4. Disabling UMEM sets __IXGBE_TX_DISABLED before closing hardware
resources and resetting xsk_umem. Check that bit in ixgbe_xsk_wakeup to
avoid using the XDP ring when it's already destroyed. synchronize_rcu is
called from ixgbe_txrx_ring_disable.

Signed-off-by: Maxim Mikityanskiy <maximmi@mellanox.com>
Signed-off-by: Björn Töpel <bjorn.topel@intel.com>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Link: https://lore.kernel.org/bpf/20191217162023.16011-5-maximmi@mellanox.com
2019-12-19 16:20:49 +01:00
..
e1000 pci-v5.5-changes 2019-12-03 13:58:22 -08:00
e1000e net: ethernet: intel: Demote MTU change prints to debug 2019-11-07 20:01:14 -08:00
fm10k fm10k: update driver version to match out-of-tree 2019-11-04 13:12:15 -08:00
i40e net/i40e: Fix concurrency issues between config flow and XSK 2019-12-19 16:20:49 +01:00
iavf iavf: initialize ITRN registers with correct values 2019-11-08 16:10:51 -08:00
ice ice: Update FW API minor version 2019-11-22 13:43:46 -08:00
igb Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2019-11-16 21:51:42 -08:00
igbvf net: ethernet: intel: Demote MTU change prints to debug 2019-11-07 20:01:14 -08:00
igc Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2019-11-09 11:04:37 -08:00
ixgb PCI: Add PCI_STD_NUM_BARS for the number of standard BARs 2019-10-14 10:22:26 -05:00
ixgbe net/ixgbe: Fix concurrency issues between config flow and XSK 2019-12-19 16:20:49 +01:00
ixgbevf Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2019-09-15 14:17:27 +02:00
e100.c intel: correct return from set features callback 2019-03-19 14:18:49 -07:00
Kconfig treewide: Add SPDX license identifier - Makefile/Kconfig 2019-05-21 10:50:46 +02:00
Makefile igc: Add skeletal frame for Intel(R) 2.5G Ethernet Controller support 2018-10-17 12:14:54 -07:00