diff options
-rw-r--r-- | sys/dev/ixl/if_iavf.c | 2 | ||||
-rw-r--r-- | sys/dev/ixl/if_ixl.c | 2 | ||||
-rw-r--r-- | sys/dev/ixl/ixl.h | 2 | ||||
-rw-r--r-- | sys/dev/ixl/ixl_txrx.c | 2 |
4 files changed, 5 insertions, 3 deletions
diff --git a/sys/dev/ixl/if_iavf.c b/sys/dev/ixl/if_iavf.c index 0d14c88a5bf4..7272ab1ef31d 100644 --- a/sys/dev/ixl/if_iavf.c +++ b/sys/dev/ixl/if_iavf.c @@ -260,7 +260,7 @@ static struct if_shared_ctx iavf_sctx_init = { .isc_vendor_info = iavf_vendor_info_array, .isc_driver_version = IAVF_DRIVER_VERSION_STRING, .isc_driver = &iavf_if_driver, - .isc_flags = IFLIB_NEED_SCRATCH | IFLIB_NEED_ZERO_CSUM | IFLIB_IS_VF, + .isc_flags = IFLIB_NEED_SCRATCH | IFLIB_NEED_ZERO_CSUM | IFLIB_TSO_INIT_IP | IFLIB_IS_VF, .isc_nrxd_min = {IXL_MIN_RING}, .isc_ntxd_min = {IXL_MIN_RING}, diff --git a/sys/dev/ixl/if_ixl.c b/sys/dev/ixl/if_ixl.c index 99b14b52e782..a03a14435482 100644 --- a/sys/dev/ixl/if_ixl.c +++ b/sys/dev/ixl/if_ixl.c @@ -323,7 +323,7 @@ static struct if_shared_ctx ixl_sctx_init = { .isc_vendor_info = ixl_vendor_info_array, .isc_driver_version = IXL_DRIVER_VERSION_STRING, .isc_driver = &ixl_if_driver, - .isc_flags = IFLIB_NEED_SCRATCH | IFLIB_NEED_ZERO_CSUM | IFLIB_ADMIN_ALWAYS_RUN, + .isc_flags = IFLIB_NEED_SCRATCH | IFLIB_NEED_ZERO_CSUM | IFLIB_TSO_INIT_IP | IFLIB_ADMIN_ALWAYS_RUN, .isc_nrxd_min = {IXL_MIN_RING}, .isc_ntxd_min = {IXL_MIN_RING}, diff --git a/sys/dev/ixl/ixl.h b/sys/dev/ixl/ixl.h index fe0a2064d3c9..d38f391cf928 100644 --- a/sys/dev/ixl/ixl.h +++ b/sys/dev/ixl/ixl.h @@ -258,6 +258,8 @@ (CSUM_IP_UDP|CSUM_IP6_UDP) #define IXL_CSUM_SCTP \ (CSUM_IP_SCTP|CSUM_IP6_SCTP) +#define IXL_CSUM_IPV4 \ + (CSUM_IP|CSUM_IP_TSO) /* Pre-11 counter(9) compatibility */ #if __FreeBSD_version >= 1100036 diff --git a/sys/dev/ixl/ixl_txrx.c b/sys/dev/ixl/ixl_txrx.c index 4966725426de..ec14ab14ee8f 100644 --- a/sys/dev/ixl/ixl_txrx.c +++ b/sys/dev/ixl/ixl_txrx.c @@ -225,7 +225,7 @@ ixl_tx_setup_offload(struct ixl_tx_queue *que, switch (pi->ipi_etype) { #ifdef INET case ETHERTYPE_IP: - if (pi->ipi_csum_flags & CSUM_IP) + if (pi->ipi_csum_flags & IXL_CSUM_IPV4) *cmd |= I40E_TX_DESC_CMD_IIPT_IPV4_CSUM; else *cmd |= I40E_TX_DESC_CMD_IIPT_IPV4; |