mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2025-01-11 08:14:27 +08:00
49763de042
This patch adds support for generic Tx checksums to the ixgbe driver. It turns out this is actually pretty easy after going over the datasheet as we were doing a number of steps we didn't need to. In order to perform a Tx checksum for an L4 header we need to fill in the following fields in the Tx descriptor: MACLEN (maximum of 127), retrieved from: skb_network_offset() IPLEN (maximum of 511), retrieved from: skb_checksum_start_offset() - skb_network_offset() TUCMD.L4T indicates offset and if checksum or crc32c, based on: skb->csum_offset The added advantage to doing this is that we can support inner checksum offloads for tunnels and MPLS while still being able to transparently insert VLAN tags. I also took the opportunity to clean-up many of the feature flag configuration bits to make them a bit more consistent between drivers. Signed-off-by: Alexander Duyck <aduyck@mirantis.com> Tested-by: Andrew Bowers <andrewx.bowers@intel.com> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com> |
||
---|---|---|
.. | ||
ixgbe_82598.c | ||
ixgbe_82599.c | ||
ixgbe_common.c | ||
ixgbe_common.h | ||
ixgbe_dcb_82598.c | ||
ixgbe_dcb_82598.h | ||
ixgbe_dcb_82599.c | ||
ixgbe_dcb_82599.h | ||
ixgbe_dcb_nl.c | ||
ixgbe_dcb.c | ||
ixgbe_dcb.h | ||
ixgbe_debugfs.c | ||
ixgbe_ethtool.c | ||
ixgbe_fcoe.c | ||
ixgbe_fcoe.h | ||
ixgbe_lib.c | ||
ixgbe_main.c | ||
ixgbe_mbx.c | ||
ixgbe_mbx.h | ||
ixgbe_model.h | ||
ixgbe_phy.c | ||
ixgbe_phy.h | ||
ixgbe_ptp.c | ||
ixgbe_sriov.c | ||
ixgbe_sriov.h | ||
ixgbe_sysfs.c | ||
ixgbe_type.h | ||
ixgbe_x540.c | ||
ixgbe_x540.h | ||
ixgbe_x550.c | ||
ixgbe.h | ||
Makefile |