linux/drivers/net/ethernet/sfc
Jon Cooper a0ee354148 sfc: process RX event inner checksum flags
Add support for RX checksum offload of encapsulated packets. This
 essentially just means paying attention to the inner checksum flags
 in the RX event, and if *either* checksum flag indicates a fail then
 don't tell the kernel that checksum offload was successful.
Also, count these checksum errors and export the counts to ethtool -S.

Test the most common "good" case of RX events with a single bitmask
 instead of a series of ifs.  Move the more specific error checking
 in to a separate function for clarity, and don't use unlikely() there
 since we know at least one of the bits is bad.

Signed-off-by: Edward Cree <ecree@solarflare.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2017-02-09 16:47:53 -05:00
..
falcon sfc-falcon: get rid of custom busy polling code 2017-02-03 09:56:50 -05:00
bitfield.h sfc: process RX event inner checksum flags 2017-02-09 16:47:53 -05:00
ef10_regs.h sfc: Update EF10 register definitions 2016-11-18 11:55:37 -05:00
ef10_sriov.c sfc: Replace memset with eth_zero_addr 2017-01-16 11:46:54 -05:00
ef10_sriov.h sfc: support ndo_get_phys_port_id even when !CONFIG_SFC_SRIOV 2017-01-10 14:16:17 -05:00
ef10.c sfc: process RX event inner checksum flags 2017-02-09 16:47:53 -05:00
efx.c sfc: don't rearm interrupts if busy polling 2017-02-06 11:59:36 -05:00
efx.h sfc: set interrupt moderation via MCDI 2016-08-12 20:42:20 -07:00
enum.h sfc: remove RESET_TYPE_RX_RECOVERY 2016-12-01 15:39:38 -05:00
ethtool.c sfc: process RX event inner checksum flags 2017-02-09 16:47:53 -05:00
farch_regs.h
farch.c sfc: read back RX hash config from the NIC when querying it with ethtool -x 2017-01-17 15:49:52 -05:00
filter.h sfc: insert catch-all filters for encapsulated traffic 2017-01-27 11:59:31 -05:00
io.h sfc: PIO:Restrict to 64bit arch and use 64-bit writes. 2014-06-11 15:36:21 -07:00
Kconfig ethernet: sfc: Add Kconfig entry for vendor Solarflare 2016-12-20 14:19:38 -05:00
Makefile sfc: separate out SFC4000 ("Falcon") support into new sfc-falcon driver 2016-11-30 10:16:58 -05:00
mcdi_mon.c sfc: remove EFX_BUG_ON_PARANOID, use EFX_WARN_ON_[ONCE_]PARANOID instead 2016-12-03 16:11:00 -05:00
mcdi_pcol.h sfc: Update MCDI protocol definitions 2016-11-18 11:55:37 -05:00
mcdi_port.c net: sfc: use new api ethtool_{get|set}_link_ksettings 2016-12-17 21:31:41 -05:00
mcdi.c sfc: refactor debug-or-warnings printks 2017-01-27 11:59:31 -05:00
mcdi.h sfc: remove EFX_BUG_ON_PARANOID, use EFX_WARN_ON_[ONCE_]PARANOID instead 2016-12-03 16:11:00 -05:00
mtd.c
net_driver.h sfc: process RX event inner checksum flags 2017-02-09 16:47:53 -05:00
nic.c sfc: work around TRIGGER_INTERRUPT command not working on SFC9140 2016-08-26 21:43:52 -07:00
nic.h sfc: read back RX hash config from the NIC when querying it with ethtool -x 2017-01-17 15:49:52 -05:00
ptp.c sfc: remove EFX_BUG_ON_PARANOID, use EFX_WARN_ON_[ONCE_]PARANOID instead 2016-12-03 16:11:00 -05:00
rx.c sfc: get rid of custom busy polling code 2017-02-03 09:56:50 -05:00
selftest.c sfc: work around TRIGGER_INTERRUPT command not working on SFC9140 2016-08-26 21:43:52 -07:00
selftest.h sfc: work around TRIGGER_INTERRUPT command not working on SFC9140 2016-08-26 21:43:52 -07:00
siena_sriov.c sfc: save old MAC address in case sriov_mac_address_changed fails 2015-05-21 18:43:53 -04:00
siena_sriov.h sfc: save old MAC address in case sriov_mac_address_changed fails 2015-05-21 18:43:53 -04:00
siena.c sfc: read back RX hash config from the NIC when querying it with ethtool -x 2017-01-17 15:49:52 -05:00
sriov.c sfc: support ndo_get_phys_port_id even when !CONFIG_SFC_SRIOV 2017-01-10 14:16:17 -05:00
sriov.h sfc: support ndo_get_phys_port_id even when !CONFIG_SFC_SRIOV 2017-01-10 14:16:17 -05:00
tx_tso.c sfc: remove EFX_BUG_ON_PARANOID, use EFX_WARN_ON_[ONCE_]PARANOID instead 2016-12-03 16:11:00 -05:00
tx.c sfc: get PIO buffer size from the NIC 2017-01-16 14:00:46 -05:00
tx.h sfc: Firmware-Assisted TSO version 2 2016-11-18 11:55:38 -05:00
vfdi.h ethernet: codespell comment spelling fixes 2015-03-08 22:54:22 -04:00
workarounds.h sfc: separate out SFC4000 ("Falcon") support into new sfc-falcon driver 2016-11-30 10:16:58 -05:00