]> bbs.cooldavid.org Git - net-next-2.6.git/commit
ioat2,3: convert to a true ring buffer
authorDan Williams <dan.j.williams@intel.com>
Wed, 26 Aug 2009 20:01:44 +0000 (13:01 -0700)
committerDan Williams <dan.j.williams@intel.com>
Wed, 9 Sep 2009 00:29:55 +0000 (17:29 -0700)
commit5cbafa65b92ee4f5b8ba915cddf94b91f186b989
treef074c9dbcdedf05c5567a4e456a15120895363a6
parentdcbc853af6f0c056088e4df0794d9bf36184809e
ioat2,3: convert to a true ring buffer

Replace the current linked list munged into a ring with a native ring
buffer implementation.  The benefit of this approach is reduced overhead
as many parameters can be derived from ring position with simple pointer
comparisons and descriptor allocation/freeing becomes just a
manipulation of head/tail pointers.

It requires a contiguous allocation for the software descriptor
information.

Since this arrangement is significantly different from the ioat1 chain,
move ioat2,3 support into its own file and header.  Common routines are
exported from driver/dma/ioat/dma.[ch].

Signed-off-by: Maciej Sosnowski <maciej.sosnowski@intel.com>
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
drivers/dma/ioat/Makefile
drivers/dma/ioat/dma.c
drivers/dma/ioat/dma.h
drivers/dma/ioat/dma_v2.c [new file with mode: 0644]
drivers/dma/ioat/dma_v2.h [new file with mode: 0644]
drivers/dma/ioat/pci.c