1
0
Fork 0
alistair23-linux/drivers/net/ethernet/intel/ixgbe
Björn Töpel 0e2b048ffe ixgbe: avoid premature Rx buffer reuse
[ Upstream commit a06316dc87 ]

The page recycle code, incorrectly, relied on that a page fragment
could not be freed inside xdp_do_redirect(). This assumption leads to
that page fragments that are used by the stack/XDP redirect can be
reused and overwritten.

To avoid this, store the page count prior invoking xdp_do_redirect().

Fixes: 6453073987 ("ixgbe: add initial support for xdp redirect")
Reported-and-analyzed-by: Li RongQing <lirongqing@baidu.com>
Signed-off-by: Björn Töpel <bjorn.topel@intel.com>
Tested-by: Sandeep Penigalapati <sandeep.penigalapati@intel.com>
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2020-12-30 11:50:56 +01:00
..
Makefile
ixgbe.h ixgbe: Use LLDP ethertype define ETH_P_LLDP 2019-06-05 13:04:29 -07:00
ixgbe_82598.c
ixgbe_82599.c ixgbe: remove magic constant in ixgbe_reset_hw_82599() 2019-02-05 16:08:54 -08:00
ixgbe_common.c ixgbe: fix signed-integer-overflow warning 2020-06-22 09:31:10 +02: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: no need to check return value of debugfs_create functions 2019-08-10 15:25:48 -07:00
ixgbe_ethtool.c ixgbe: Check DDM existence in transceiver before access 2019-06-26 09:18:54 -07:00
ixgbe_fcoe.c scsi: fcoe: Fix I/O path allocation 2020-09-03 11:26:59 +02:00
ixgbe_fcoe.h
ixgbe_ipsec.c ixgbe: Use kzfree() rather than its implementation. 2019-09-05 12:06:04 +02:00
ixgbe_ipsec.h
ixgbe_lib.c ixgbe: protect ring accesses with READ- and WRITE_ONCE 2020-07-16 08:16:34 +02:00
ixgbe_main.c ixgbe: avoid premature Rx buffer reuse 2020-12-30 11:50:56 +01:00
ixgbe_mbx.c
ixgbe_mbx.h
ixgbe_model.h
ixgbe_phy.c ixgbe: fix mdio bus registration 2019-03-26 16:14:24 -07:00
ixgbe_phy.h ixgbe: Check DDM existence in transceiver before access 2019-06-26 09:18:54 -07:00
ixgbe_ptp.c ixgbe: fix potential u32 overflow on shift 2019-06-28 15:59:38 -07:00
ixgbe_sriov.c ixgbe: Use LLDP ethertype define ETH_P_LLDP 2019-06-05 13:04:29 -07:00
ixgbe_sriov.h
ixgbe_sysfs.c
ixgbe_txrx_common.h xsk: replace ndo_xsk_async_xmit with ndo_xsk_wakeup 2019-08-17 23:07:31 +02:00
ixgbe_type.h ixgbe: implement support for SDP/PPS output on X550 hardware 2019-06-05 13:04:30 -07:00
ixgbe_x540.c
ixgbe_x540.h
ixgbe_x550.c
ixgbe_xsk.c net/ixgbe: Fix concurrency issues between config flow and XSK 2020-01-12 12:21:42 +01:00