linux/drivers/infiniband
Jack Morgenstein f36e1793e2 IB/umad: Add support for large RMPP transfers
Add support for sending and receiving large RMPP transfers.  The old
code supports transfers only as large as a single contiguous kernel
memory allocation.  This patch uses linked list of memory buffers when
sending and receiving data to avoid needing contiguous pages for
larger transfers.

  Receive side: copy the arriving MADs in chunks instead of coalescing
  to one large buffer in kernel space.

  Send side: split a multipacket MAD buffer to a list of segments,
  (multipacket_list) and send these using a gather list of size 2.
  Also, save pointer to last sent segment, and retrieve requested
  segments by walking list starting at last sent segment. Finally,
  save pointer to last-acked segment.  When retrying, retrieve
  segments for resending relative to this pointer.  When updating last
  ack, start at this pointer.

Signed-off-by: Jack Morgenstein <jackm@mellanox.co.il>
Signed-off-by: Sean Hefty <sean.hefty@intel.com>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
2006-03-20 10:08:23 -08:00
..
core IB/umad: Add support for large RMPP transfers 2006-03-20 10:08:23 -08:00
hw/mthca IB/mthca: Update firmware versions 2006-03-20 10:08:22 -08:00
ulp IB/srp: Add SCSI host attributes to show target port 2006-03-20 10:08:23 -08:00
Kconfig IB: Add SCSI RDMA Protocol (SRP) initiator 2005-11-02 14:07:13 -08:00
Makefile IB: Add SCSI RDMA Protocol (SRP) initiator 2005-11-02 14:07:13 -08:00