The following 4 patches enabling fsl-dma and talitos offload raid
operations for improving raid performance and balancing CPU load.
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%.
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 (4):
Talitos: Support for async_tx XOR offload
fsl-dma: remove attribute DMA_INTERRUPT of dmaengine
fsl-dma: change release process of dma descriptor for supporting async_tx
fsl-dma: use spin_lock_bh to instead of spin_lock_irqsave
drivers/crypto/Kconfig | 9 +
drivers/crypto/talitos.c | 410 +++++++++++++++++++++++++++++++++++++++++++
drivers/crypto/talitos.h | 53 ++++++
drivers/dma/fsldma.c | 436 +++++++++++++++++++++++++---------------------
drivers/dma/fsldma.h | 1 +
5 files changed, 708 insertions(+), 201 deletions(-)
On Mon, 16 Jul 2012 12:07:16 +0800
Qiang Liu [off-list ref] wrote:
drivers/crypto/Kconfig | 9 +
drivers/crypto/talitos.c | 410 +++++++++++++++++++++++++++++++++++++++++++
drivers/crypto/talitos.h | 53 ++++++
drivers/dma/fsldma.c | 436 +++++++++++++++++++++++++---------------------
drivers/dma/fsldma.h | 1 +
5 files changed, 708 insertions(+), 201 deletions(-)
Given the pending talitos patches, this patchseries doesn't apply
cleanly: can you rebase onto [1], which is based on Herbert's
cryptodev tree and contain's Horia's four patches? They didn't get
any negative comments, so I assume eventually they will be applied,
and doing so will make Herbert's life easier.
I applied the series on Herbert's cryptodev, and while fsldma
already had this build warning:
drivers/dma/fsldma.c: In function 'fsl_dma_tx_submit':
drivers/dma/fsldma.c:636:2: warning: 'cookie' may be used uninitialized in this function [-Wuninitialized]
this patchseries introduces a new one:
drivers/dma/fsldma.c: In function 'dma_do_tasklet':
drivers/dma/fsldma.c:1134:16: warning: unused variable 'flags' [-Wunused-variable]
I'll wait for a re-post, after these and Ira's comments are
addressed, before trying to test again.
Thanks,
Kim
[1] git://git.freescale.com/crypto/cryptodev.git
-----Original Message-----
From: Phillips Kim-R1AAHA
Sent: Tuesday, July 17, 2012 9:04 AM
To: Liu Qiang-B32616
Cc: linux-crypto@vger.kernel.org; linuxppc-dev@lists.ozlabs.org; Li Yang-
R58472; dan.j.williams@intel.com; herbert@gondor.hengli.com.au
Subject: Re: [PATCH v3 0/4] Raid: enable talitos xor offload for
improving performance
=20
On Mon, 16 Jul 2012 12:07:16 +0800
Qiang Liu [off-list ref] wrote:
=20
quoted
drivers/crypto/Kconfig | 9 +
drivers/crypto/talitos.c | 410
+++++++++++++++++++++++++++++++++++++++++++
quoted
drivers/crypto/talitos.h | 53 ++++++
drivers/dma/fsldma.c | 436 +++++++++++++++++++++++++-------------
--------
quoted
drivers/dma/fsldma.h | 1 +
5 files changed, 708 insertions(+), 201 deletions(-)
=20
Given the pending talitos patches, this patchseries doesn't apply
cleanly: can you rebase onto [1], which is based on Herbert's
cryptodev tree and contain's Horia's four patches? They didn't get
any negative comments, so I assume eventually they will be applied,
and doing so will make Herbert's life easier.
=20
I applied the series on Herbert's cryptodev, and while fsldma
already had this build warning:
=20
drivers/dma/fsldma.c: In function 'fsl_dma_tx_submit':
drivers/dma/fsldma.c:636:2: warning: 'cookie' may be used uninitialized
in this function [-Wuninitialized]
Kim, I will fix it in an another separate patch.
=20
this patchseries introduces a new one:
=20
drivers/dma/fsldma.c: In function 'dma_do_tasklet':
drivers/dma/fsldma.c:1134:16: warning: unused variable 'flags' [-Wunused-
variable]
Sorry, my bad. I will correct it in v4 5/6 (according to Li Yang's comments=
,
v3 3/4 should be split up). Thanks.
=20
I'll wait for a re-post, after these and Ira's comments are
addressed, before trying to test again.
I agree, I think his comments is very important.
=20
Thanks,
=20
Kim
=20
[1] git://git.freescale.com/crypto/cryptodev.git