Skip to content

raid acceleration and asynchronous offload api for 2.6.22

Dan Williams linux-raid lkml 1 version In review

Get series with b4
b4 am [email protected]

Versions newest first

  1. v1 Latest16 patches 7 repliesIn review

Patches in v1 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/16dmaengine: add base support for the async_tx apidrivers/dma/dmaengine.c drivers/dma/ioatdma.c drivers/dma/ioatdma.h +1 more+454 -2290 replies
2/16dmaengine: move channel management to the clientdrivers/dma/dmaengine.c drivers/dma/ioatdma.c drivers/dma/ioatdma.h +2 more+198 -1640 replies
3/16ARM: Add drivers/dma to arch/arm/Kconfigarch/arm/Kconfig+2 -00 replies
4/16dmaengine: add the async_tx apidrivers/Makefile drivers/dma/Kconfig drivers/dma/Makefile +8 more+1263 -1890 replies
5/16md: add raid5_run_ops and support routinesdrivers/md/raid5.c include/linux/raid/raid5.h+599 -30 replies
6/16md: use raid5_run_ops for stripe cache operationsdrivers/md/raid5.c+56 -90 replies
7/16md: move write operations to raid5_run_opsdrivers/md/raid5.c+130 -210 replies
8/16md: move raid5 compute block operations to raid5_run_opsdrivers/md/raid5.c+94 -320 replies
9/16md: move raid5 parity checks to raid5_run_opsdrivers/md/raid5.c+61 -190 replies
10/16md: satisfy raid5 read requests via raid5_run_opsdrivers/md/raid5.c+30 -310 replies
11/16md: use async_tx and raid5_run_ops for raid5 expansion operationsdrivers/md/raid5.c+36 -120 replies
12/16md: move raid5 io requests to raid5_run_opsdrivers/md/raid5.c+10 -580 replies
13/16md: remove raid5 compute_block and compute_parity5drivers/md/raid5.c+0 -1240 replies
14/16dmaengine: driver for the iop32x, iop33x, and iop13xx raid enginesdrivers/dma/Kconfig drivers/dma/Makefile drivers/dma/iop-adma.c +1 more+1594 -00 replies
15/16iop13xx: Surface the iop13xx adma units to the iop-adma driverarch/arm/mach-iop13xx/setup.c include/asm-arm/arch-iop13xx/adma.h include/asm-arm/arch-iop13xx/iop13xx.h+766 -210 replies
16/16iop3xx: Surface the iop3xx DMA and AAU units to the iop-adma driverarch/arm/mach-iop32x/glantank.c arch/arm/mach-iop32x/iq31244.c arch/arm/mach-iop32x/iq80321.c +9 more+1147 -600 replies

Reviews trailers per patch

No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.

Read the v1 thread

Cover letter [PATCH 00/16] raid acceleration and asynchronous offload api for 2.6.22

I am pleased to release this latest spin of the raid acceleration patches for merge consideration. This release aims to address all pending review items including MD bug fixes and async_tx api changes from Neil, and concerns on channel management from Chris and others.

Data integrity tests using home grown scripts and 'iozone -V' are passing. I am open to suggestions for additional testing criteria. I have also verified that git bisect is not broken by this set.

The short log below highlights the most recent changes. The patches will be sent as a reply to this message, and they are also available via git:

git pull git://lost.foo-projects.org/~dwillia2/git/iop md-accel-linus

Additional comments and feedback welcome.

Thanks,
Dan

--
01/16: dmaengine: add base support for the async_tx api
* convert channel capabilities to a 'cpumask_t like' bitmap
02/16: dmaengine: move channel management to the client
* this patch is new to this series
03/16: ARM: Add drivers/dma to arch/arm/Kconfig
04/16: dmaengine: add the async_tx api
* remove the per operation type list, and distribute operation capabilities evenly amongst the available channels
* simplify async_tx_find_channel to optimize the fast path
05/16: md: add raid5_run_ops and support routines
* explicitly handle the 2-disk raid5 case (xor becomes memcpy)
* fix race between async engines and bi_end_io call for reads, Neil Brown
* remove unnecessary spin_lock from ops_complete_biofill
* remove test_and_set/test_and_clear BUG_ONs, Neil Brown
* remove explicit interrupt handling, Neil Brown
06/16: md: use raid5_run_ops for stripe cache operations 07/16: md: move write operations to raid5_run_ops
* remove test_and_set/test_and_clear BUG_ONs, Neil Brown
08/16: md: move raid5 compute block operations to raid5_run_ops
* remove the req_compute BUG_ON
09/16: md: move raid5 parity checks to raid5_run_ops
* remove test_and_set/test_and_clear BUG_ONs, Neil Brown
10/16: md: satisfy raid5 read requests via raid5_run_ops
* cleanup to_read and to_fill accounting
* do not fail reads that have reached the cache
11/16: md: use async_tx and raid5_run_ops for raid5 expansion operations 12/16: md: move raid5 io requests to raid5_run_ops
13/16: md: remove raid5 compute_block and compute_parity5 14/16: dmaengine: driver for the iop32x, iop33x, and iop13xx raid engines
* fix locking bug in iop_adma_alloc_chan_resources, Benjamin Herrenschmidt
* convert capabilities over to dma_cap_mask_t
15/16: iop13xx: Surface the iop13xx adma units to the iop-adma driver 16/16: iop3xx: Surface the iop3xx DMA and AAU units to the iop-adma driver

(previous release: http://marc.info/?l=linux-raid&m=117463257423193&w=2)