summaryrefslogtreecommitdiffstats
path: root/sys/net/if.h
diff options
context:
space:
mode:
authorandre <andre@FreeBSD.org>2006-09-06 21:51:59 +0000
committerandre <andre@FreeBSD.org>2006-09-06 21:51:59 +0000
commitcb05913fd251edc3d35bcbeca73a8b681e2e58e8 (patch)
treeb5d4180eab9fff2a64a310b178d7e69374bbdacf /sys/net/if.h
parent0dddb6a1cc063906ce418aa1a75805e68b4ec971 (diff)
downloadFreeBSD-src-cb05913fd251edc3d35bcbeca73a8b681e2e58e8.zip
FreeBSD-src-cb05913fd251edc3d35bcbeca73a8b681e2e58e8.tar.gz
First step of TSO (TCP segmentation offload) support in our network stack.
o add IFCAP_TSO[46] for drivers to announce this capability for IPv4 and IPv6 o add CSUM_TSO flag to mbuf pkthdr csum_flags field o add tso_segsz field to mbuf pkthdr o enhance ip_output() packet length check to allow for large TSO packets o extend tcp_maxmtu[46]() with a flag pointer to pass interface capabilities o adjust all callers of tcp_maxmtu[46]() accordingly Discussed on: -current, -net Sponsored by: TCP/IP Optimization Fundraise 2005
Diffstat (limited to 'sys/net/if.h')
-rw-r--r--sys/net/if.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/sys/net/if.h b/sys/net/if.h
index b989890..cecb123 100644
--- a/sys/net/if.h
+++ b/sys/net/if.h
@@ -206,8 +206,11 @@ struct if_data {
#define IFCAP_JUMBO_MTU 0x0020 /* 9000 byte MTU supported */
#define IFCAP_POLLING 0x0040 /* driver supports polling */
#define IFCAP_VLAN_HWCSUM 0x0080 /* can do IFCAP_HWCSUM on VLANs */
+#define IFCAP_TSO4 0x0100 /* can do TCP Segmentation Offload */
+#define IFCAP_TSO6 0x0200 /* can do TCP6 Segmentation Offload */
#define IFCAP_HWCSUM (IFCAP_RXCSUM | IFCAP_TXCSUM)
+#define IFCAP_TSO (IFCAP_TSO4 | IFCAP_TSO6)
#define IFQ_MAXLEN 50
#define IFNET_SLOWHZ 1 /* granularity is 1 second */
OpenPOWER on IntegriCloud