summaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authorReyk Floeter <reyk@cvs.openbsd.org>2010-01-11 02:04:26 +0000
committerReyk Floeter <reyk@cvs.openbsd.org>2010-01-11 02:04:26 +0000
commitbb4d2dd6531def91bae42be4ea86b2650f6405ee (patch)
treef823918d93a08f7e09db9015d46b1cb1f54685f1 /sys
parente706f27f6189fe1a7882dde768b50f22a14c83c9 (diff)
Enable IP checksum offloading in ix(4).
Note: it did not work before because the checksum offloading was taking care about TCP and UDP but forgot about IP fragments and other IP protocols. We need to take care that IP fragments are handled correctly when we do IP/TCP/UDP offloading. ok jsg@ deraadt@, discussed with others
Diffstat (limited to 'sys')
-rw-r--r--sys/dev/pci/if_ix.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/sys/dev/pci/if_ix.c b/sys/dev/pci/if_ix.c
index d6862de24a0..591448b9e0e 100644
--- a/sys/dev/pci/if_ix.c
+++ b/sys/dev/pci/if_ix.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: if_ix.c,v 1.32 2010/01/09 05:44:41 reyk Exp $ */
+/* $OpenBSD: if_ix.c,v 1.33 2010/01/11 02:04:25 reyk Exp $ */
/******************************************************************************
@@ -1359,15 +1359,14 @@ ixgbe_setup_interface(struct ix_softc *sc)
m_clsetwms(ifp, MCLBYTES, 4, sc->num_rx_desc);
- ifp->if_capabilities = IFCAP_VLAN_MTU;
+ ifp->if_capabilities = IFCAP_VLAN_MTU | IFCAP_CSUM_IPv4;
#if NVLAN > 0
ifp->if_capabilities |= IFCAP_VLAN_HWTAGGING;
#endif
#ifdef IX_CSUM_OFFLOAD
- ifp->if_capabilities |= IFCAP_CSUM_IPv4 | IFCAP_CSUM_TCPv4 |
- IFCAP_CSUM_UDPv4;
+ ifp->if_capabilities |= IFCAP_CSUM_TCPv4 | IFCAP_CSUM_UDPv4;
#endif
sc->max_frame_size =