]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/commit
- Updated TOE support in the kernel.
authorNavdeep Parhar <np@FreeBSD.org>
Tue, 19 Jun 2012 07:34:13 +0000 (07:34 +0000)
committerNavdeep Parhar <np@FreeBSD.org>
Tue, 19 Jun 2012 07:34:13 +0000 (07:34 +0000)
commit09fe63205c597be4f762c7f3017e2854c121d6d1
tree9255a545bbd49a0458ed8850371b4fe6ed2cd01f
parent41b8cbda7d45229258c6205b697b5fbf80888493
- Updated TOE support in the kernel.

- Stateful TCP offload drivers for Terminator 3 and 4 (T3 and T4) ASICs.
  These are available as t3_tom and t4_tom modules that augment cxgb(4)
  and cxgbe(4) respectively.  The cxgb/cxgbe drivers continue to work as
  usual with or without these extra features.

- iWARP driver for Terminator 3 ASIC (kernel verbs).  T4 iWARP in the
  works and will follow soon.

Build-tested with make universe.

30s overview
============
What interfaces support TCP offload?  Look for TOE4 and/or TOE6 in the
capabilities of an interface:
# ifconfig -m | grep TOE

Enable/disable TCP offload on an interface (just like any other ifnet
capability):
# ifconfig cxgbe0 toe
# ifconfig cxgbe0 -toe

Which connections are offloaded?  Look for toe4 and/or toe6 in the
output of netstat and sockstat:
# netstat -np tcp | grep toe
# sockstat -46c | grep toe

Reviewed by: bz, gnn
Sponsored by: Chelsio communications.
MFC after: ~3 months (after 9.1, and after ensuring MFC is feasible)
104 files changed:
sbin/ifconfig/ifconfig.c
sys/amd64/conf/GENERIC
sys/conf/NOTES
sys/conf/files
sys/conf/options
sys/contrib/rdma/krping/krping.c
sys/contrib/rdma/krping/krping.h
sys/contrib/rdma/krping/krping_dev.c
sys/contrib/rdma/rdma_addr.c
sys/contrib/rdma/rdma_cache.c
sys/dev/cxgb/common/cxgb_ctl_defs.h
sys/dev/cxgb/cxgb_adapter.h
sys/dev/cxgb/cxgb_main.c
sys/dev/cxgb/cxgb_offload.c [deleted file]
sys/dev/cxgb/cxgb_offload.h
sys/dev/cxgb/cxgb_osdep.h
sys/dev/cxgb/cxgb_sge.c
sys/dev/cxgb/sys/mvec.h
sys/dev/cxgb/t3cdev.h [deleted file]
sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb.c
sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb.h
sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb_cm.c
sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb_cm.h
sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb_cq.c
sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb_dbg.c
sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb_ev.c
sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb_hal.c
sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb_hal.h
sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb_ib_intfc.h [new file with mode: 0644]
sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb_mem.c
sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb_provider.c
sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb_provider.h
sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb_qp.c
sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb_resource.c
sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb_user.h
sys/dev/cxgb/ulp/iw_cxgb/iw_cxgb_wr.h
sys/dev/cxgb/ulp/toecore/cxgb_toedev.h [deleted file]
sys/dev/cxgb/ulp/toecore/toedev.c [deleted file]
sys/dev/cxgb/ulp/tom/cxgb_cpl_io.c
sys/dev/cxgb/ulp/tom/cxgb_cpl_socket.c [deleted file]
sys/dev/cxgb/ulp/tom/cxgb_ddp.c [deleted file]
sys/dev/cxgb/ulp/tom/cxgb_defs.h [deleted file]
sys/dev/cxgb/ulp/tom/cxgb_l2t.c
sys/dev/cxgb/ulp/tom/cxgb_l2t.h
sys/dev/cxgb/ulp/tom/cxgb_listen.c
sys/dev/cxgb/ulp/tom/cxgb_t3_ddp.h [deleted file]
sys/dev/cxgb/ulp/tom/cxgb_tcp.h [deleted file]
sys/dev/cxgb/ulp/tom/cxgb_tcp_offload.c [deleted file]
sys/dev/cxgb/ulp/tom/cxgb_tcp_offload.h [deleted file]
sys/dev/cxgb/ulp/tom/cxgb_toepcb.h
sys/dev/cxgb/ulp/tom/cxgb_tom.c
sys/dev/cxgb/ulp/tom/cxgb_tom.h
sys/dev/cxgb/ulp/tom/cxgb_tom_sysctl.c [deleted file]
sys/dev/cxgbe/adapter.h
sys/dev/cxgbe/common/t4_hw.c
sys/dev/cxgbe/offload.h
sys/dev/cxgbe/t4_l2t.c
sys/dev/cxgbe/t4_l2t.h
sys/dev/cxgbe/t4_main.c
sys/dev/cxgbe/t4_sge.c
sys/dev/cxgbe/tom/t4_connect.c [new file with mode: 0644]
sys/dev/cxgbe/tom/t4_cpl_io.c [new file with mode: 0644]
sys/dev/cxgbe/tom/t4_listen.c [new file with mode: 0644]
sys/dev/cxgbe/tom/t4_tom.c [new file with mode: 0644]
sys/dev/cxgbe/tom/t4_tom.h [new file with mode: 0644]
sys/dev/cxgbe/tom/t4_tom_l2t.c [new file with mode: 0644]
sys/dev/cxgbe/tom/t4_tom_l2t.h [new file with mode: 0644]
sys/i386/conf/GENERIC
sys/i386/conf/XEN
sys/modules/Makefile
sys/modules/cxgb/Makefile
sys/modules/cxgb/cxgb/Makefile
sys/modules/cxgb/iw_cxgb/Makefile
sys/modules/cxgb/toecore/Makefile [deleted file]
sys/modules/cxgb/tom/Makefile
sys/modules/cxgbe/Makefile
sys/modules/cxgbe/tom/Makefile [new file with mode: 0644]
sys/modules/rdma/krping/Makefile
sys/modules/toecore/Makefile [new file with mode: 0644]
sys/net/if_var.h
sys/net/if_vlan.c
sys/netinet/if_ether.c
sys/netinet/if_ether.h
sys/netinet/in.c
sys/netinet/tcp_input.c
sys/netinet/tcp_offload.c
sys/netinet/tcp_offload.h
sys/netinet/tcp_output.c
sys/netinet/tcp_subr.c
sys/netinet/tcp_syncache.c
sys/netinet/tcp_syncache.h
sys/netinet/tcp_timer.c
sys/netinet/tcp_usrreq.c
sys/netinet/tcp_var.h
sys/netinet/toecore.c [new file with mode: 0644]
sys/netinet/toecore.h [new file with mode: 0644]
sys/netinet/toedev.h [deleted file]
sys/ofed/drivers/infiniband/core/cma.c
sys/ofed/drivers/infiniband/core/iwcm.c
sys/ofed/include/linux/net.h
sys/ofed/include/net/netevent.h
sys/ofed/include/rdma/iw_cm.h
usr.bin/netstat/inet.c
usr.bin/sockstat/sockstat.c