[PATCH 0/9] I/OAT

From: Chris Leech
Date: Wed Mar 29 2006 - 17:50:18 EST


This patch series is the a full release of the Intel(R) I/O
Acceleration Technology (I/OAT) for Linux. It includes an in kernel API
for offloading memory copies to hardware, a driver for the I/OAT DMA memcpy
engine, and changes to the TCP stack to offload copies of received
networking data to application space.

Changes from last posting:
Fixed a page reference leak that happened when offloaded copies were
set up but never used for a recv.
Fixed the ioatdma self test to handle failures correctly.
Serialized DMA ADD and REMOVE events in the networking core with a lock.
Added a long comment in dmaengine.c to describe the locking and
reference counting being used.
Disabled preempt around a use of get_cpu_var.
Made tcp_dma_try_early_copy static, it is only used in one file.
Made some GFP_ATOMIC allocations GFP_KERNEL where safe to sleep.
Made changes to sk_eat_skb, removing some ifdefs in the TCP code.


These changes apply to DaveM's net-2.6.17 tree as of commit
68907dad58cd7ef11536e1db6baeb98b20af91b2 ([DCCP]: Use NULL for pointers, comfort sparse.)

They are available to pull from
git://198.78.49.142/~cleech/linux-2.6 ioat-2.6.17

There are 9 patches in the series:
1) The memcpy offload APIs and class code
2) The Intel I/OAT DMA driver (ioatdma)
3) Core networking code to setup networking as a DMA memcpy client
4) Utility functions for sk_buff to iovec offloaded copy
5) Structure changes needed for TCP receive offload
6) Rename cleanup_rbuf to tcp_cleanup_rbuf
7) Make sk_eat_skb aware of early copied packets
8) Add a sysctl to tune the minimum offloaded I/O size for TCP
9) The main TCP receive offload changes

--
Chris Leech <christopher.leech@xxxxxxxxx>
I/O Acceleration Technology Software Development
LAN Access Division / Digital Enterprise Group
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/