On Thu, Aug 09, 2012 at 04:19:35PM +0800, qiang.liu@xxxxxxxxxxxxx wrote: > Hi all, > > The following 8 patches enabling fsl-dma and talitos offload raid > operations for improving raid performance and balancing CPU load. > > These patches include talitos, fsl-dma and carma module (caram uses > some features of fsl-dma). > > Write performance will be improved by 25-30% tested by iozone. > Write performance is improved about 2% after using spin_lock_bh replace > spin_lock_irqsave. > CPU load will be reduced by 8%. > > "fwiw, I gave v5 a test-drive, setting up a RAID5 array on ramdisks > [1], and this patchseries, along with FSL_DMA && NET_DMA set seems > to be holding water, so this series gets my:" > > Tested-by: Kim Phillips <kim.phillips@xxxxxxxxxxxxx> > The fsldma parts of the series all look great to me. Thanks, Ira > [1] mdadm --create --verbose --force /dev/md0 --level=raid5 --raid-devices=4 \ > /dev/ram[0123] > > Changes in v7: > - add test result which is provided by Kim Phillips; > - correct one coding style issue in patch 5/8; > - add comments by Arnd Bergmann in patch 6/8; > > Changes in v6: > - swap the order of original patch 3/6 and 4/6; > - merge Ira's patch to reduce the size of original patch; > - merge Ira's patch of carma in 8/8; > - update documents and descriptions according to Ira's advice; > > Changes in v5: > - add detail description in patch 3/6 about the process of completed > descriptor, the process is in align with fsl-dma Reference Manual, > illustrate the potential risk and how to reproduce it; > - drop the patch 7/7 in v4 according to Timur's comments; > > Changes in v4: > - fix an error in talitos when dest addr is same with src addr, dest > should be freed only one time if src is same with dest addr; > - correct coding style in fsl-dma according to Ira's comments; > - fix a race condition in fsl-dma fsl_tx_status(), remove the interface > which is used to free descriptors in queue ld_completed, this interface > has been included in fsldma_cleanup_descriptor(), in v3, there is one > place missed spin_lock protect; > - split the original patch 3/4 up to 2 patches 3/7 and 4/7 according to > Li Yang's comments; > - fix a warning of unitialized cookie; > - add memory copy self test in fsl-dma; > - add more detail description about use spin_lock_bh() to instead of > spin_lock_irqsave() according to Timur's comments. > > Changes in v3: > - change release process of fsl-dma descriptor for resolve the > potential race condition; > - add test result when use spin_lock_bh replace spin_lock_irqsave; > - modify the benchmark results according to the latest patch. > > Changes in v2: > - rebase onto cryptodev tree; > - split the patch 3/4 up to 3 independent patches; > - remove the patch 4/4, the fix is not for cryptodev tree; > > Qiang Liu (8): > Talitos: Support for async_tx XOR offload > fsl-dma: remove attribute DMA_INTERRUPT of dmaengine > fsl-dma: add fsl_dma_free_descriptor() to reduce code duplication > fsl-dma: move functions to avoid forward declarations > fsl-dma: change release process of dma descriptor for supporting async_tx > fsl-dma: use spin_lock_bh to instead of spin_lock_irqsave > fsl-dma: fix a warning of unitialized cookie > carma: remove unnecessary DMA_INTERRUPT capability > > drivers/crypto/Kconfig | 9 + > drivers/crypto/talitos.c | 413 ++++++++++++++++++++++++++ > drivers/crypto/talitos.h | 53 ++++ > drivers/dma/fsldma.c | 488 +++++++++++++++++-------------- > drivers/dma/fsldma.h | 17 +- > drivers/misc/carma/carma-fpga-program.c | 1 - > drivers/misc/carma/carma-fpga.c | 2 +- > 7 files changed, 761 insertions(+), 222 deletions(-) > > _______________________________________________ > Linuxppc-dev mailing list > Linuxppc-dev@xxxxxxxxxxxxxxxx > https://lists.ozlabs.org/listinfo/linuxppc-dev -- To unsubscribe from this list: send the line "unsubscribe linux-crypto" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html