[PATCH v3 0/2] Introduce the bulk IV mode for improving the crypto engine efficiency

From: Baolin Wang
Date: Thu Dec 17 2015 - 02:33:46 EST


>From the dm-crypt performance report, we found it shows low efficiency
with crypto engine for some mode (like ecb or xts mode). Because in dm
crypt, it will map the IO data buffer with scatterlist, and send the
scatterlist of one bio to the encryption engine, if send more scatterlists
with bigger size at one time, that helps the engine palys best performance,
which means a high encryption speed.

But now the dm-crypt only map one segment (always one sector) of one bio
with one scatterlist to the crypto engine at one time. which is more
time-consuming and ineffective for the crypto engine. Especially for some
modes which don't need different IV for each sector, we can map the whole
bio with multiple scatterlists to improve the engine performance.

But this optimization is not support some ciphers and IV modes which should
do sector by sector and need different IV for each sector.

Change since v2:
- Introduce blk_bio_map_sg() function to map one bio.
- Do some modifications for checking sg entry.

Baolin Wang (2):
block: Introduce blk_bio_map_sg() to map one bio
md: dm-crypt: Introduce the bulk IV mode for bulk crypto

block/blk-merge.c | 45 +++++++
drivers/md/dm-crypt.c | 333 +++++++++++++++++++++++++++++++++++++++++++++++-
include/linux/blkdev.h | 3 +
3 files changed, 375 insertions(+), 6 deletions(-)

--
1.7.9.5

--
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/