2
0
mirror of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git synced 2025-09-04 20:19:47 +08:00
linux/drivers/net/ethernet/intel/igc
Andre Guedes 4ff3203610 igc: Add support for XDP_REDIRECT action
Add support for the XDP_REDIRECT action which enables XDP programs to
redirect packets arriving at I225 NIC. It also implements the
ndo_xdp_xmit ops, enabling the igc driver to transmit packets forwarded
to it by xdp programs running on other interfaces.

The patch tweaks the driver's page counting and recycling scheme as
described in the following two commits and implemented by other Intel
drivers in order to properly support XDP_REDIRECT action:
  commit 8ce29c679a ("i40e: tweak page counting for XDP_REDIRECT")
  commit 75aab4e10a ("i40e: avoid premature Rx buffer reuse")

This patch has been tested with the sample apps "xdp_redirect_cpu" and
"xdp_redirect_map" located in samples/bpf/.

Signed-off-by: Andre Guedes <andre.guedes@intel.com>
Signed-off-by: Vedang Patel <vedang.patel@intel.com>
Signed-off-by: Jithu Joseph <jithu.joseph@intel.com>
Reviewed-by: Maciej Fijalkowski <maciej.fijalkowski@intel.com>
Tested-by: Dvora Fuxbrumer <dvorax.fuxbrumer@linux.intel.com>
Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
2021-03-29 09:16:35 -07:00
..
igc_base.c igc: Add new device ID 2020-12-10 13:13:24 -08:00
igc_base.h igc: Add tx_csum offload functionality 2019-09-09 11:37:14 -07:00
igc_defines.h igc: Remove unused MII_CR_LOOPBACK 2021-03-19 13:53:49 -07:00
igc_diag.c igc: add support to eeprom, registers and link self-tests 2020-05-18 15:06:28 -07:00
igc_diag.h igc: add support to eeprom, registers and link self-tests 2020-05-18 15:06:28 -07:00
igc_dump.c igc: Fix TDBAL register show incorrect value 2021-02-03 16:32:17 -08:00
igc_ethtool.c igc: Fix Supported Pause Frame Link Setting 2021-03-11 09:37:48 -08:00
igc_hw.h igc: Clean up nvm_operations structure 2021-02-03 15:20:32 -08:00
igc_i225.c igc: Fix prototype warning 2021-03-23 11:34:02 -07:00
igc_i225.h igc: Add initial LTR support 2020-06-29 18:21:09 -07:00
igc_mac.c igc: check return value of ret_val in igc_config_fc_after_link_up 2021-02-01 10:04:43 -08:00
igc_mac.h igc: remove IGC_REMOVED function 2020-05-19 15:01:48 -07:00
igc_main.c igc: Add support for XDP_REDIRECT action 2021-03-29 09:16:35 -07:00
igc_nvm.c igc: Add NVM support 2018-10-17 13:52:00 -07:00
igc_nvm.h igc: Add NVM support 2018-10-17 13:52:00 -07:00
igc_phy.c igc: Expose the gPHY firmware version 2021-02-03 15:20:32 -08:00
igc_phy.h igc: Expose the gPHY firmware version 2021-02-03 15:20:32 -08:00
igc_ptp.c igc: Refactor Rx timestamp handling 2021-03-29 08:49:20 -07:00
igc_regs.h igc: Expose the gPHY firmware version 2021-02-03 15:20:32 -08:00
igc_tsn.c igc: Add support for ETF offloading 2020-04-17 10:19:24 -07:00
igc_tsn.h igc: Add support for taprio offloading 2020-04-17 10:19:24 -07:00
igc_xdp.c igc: Add support for XDP_TX action 2021-03-29 09:12:19 -07:00
igc_xdp.h igc: Add support for XDP_TX action 2021-03-29 09:12:19 -07:00
igc.h igc: Add support for XDP_TX action 2021-03-29 09:12:19 -07:00
Makefile igc: Add initial XDP support 2021-03-29 09:09:53 -07:00