Re: [openib-general] [PATCH v2 04/13] Connection Manager
From: Steve Wise <hidden>
Date: 2006-12-05 16:27:14
Also in:
lkml
On Tue, 2006-12-05 at 10:02 -0600, Steve Wise wrote:
On Tue, 2006-12-05 at 11:45 +0100, Brice Goglin wrote:quoted
Steve Wise wrote:quoted
There is no SW TCP stack in this driver. The HW supports RDMA over TCP/IP/10GbE in HW and this is required for zero-copy RDMA over Ethernet (aka iWARP). The device is a 10 GbE device, not Infiniband.Then, I wonder why the driver goes in drivers/infiniband/ :)drivers/infiniband support both IB and IWARP transports.quoted
Is there really no way to only keep the actual hw infiniband there, move iwarp/rdma drivers in drivers/net/something/ and the core stuff in net/something/ ?Sure, this _could_ be done, but what I think you're missing is that applications use the interface exported by drivers/infiniband over both IB -and- IWARP transports. The application can be written to not care which transport is used. Examples of apps that can run over both transports using the same common interface: user mode: MVAPICH2, OMPI, IMPI, HPMPI, kernel mode: NFS-RDMA, iSER. Note that the include directory used by drivers/infiniband is now include/rdma. Perhaps drivers/infiniband should be renamed to drivers/rdma as well at some point...
By the way, FYI: The Chelsio T3 device support is split into 2 driver modules: the Ethernet driver and the RDMA driver. The Ethernet driver lives in drivers/net/cxgb3 while the RDMA driver lives in drivers/infiniband/hw/cxgb3. The Ethernet driver can be used stand-alone as a 10GbE high-performance NIC driver. The RDMA driver has a config-time dependency on the Ethernet driver. The 2nd version of the Ethernet driver was posted yesterday. See: http://www.spinics.net/lists/netdev/msg20464.html Steve.