Commit 778f81d6 authored by Christian Lamparter's avatar Christian Lamparter Committed by Herbert Xu

crypto: crypto4xx - increase context and scatter ring buffer elements

If crypto4xx is used in conjunction with dm-crypt, the available
ring buffer elements are not enough to handle the load properly.

On an aes-cbc-essiv:sha256 encrypted swap partition the read
performance is abyssal: (tested with hdparm -t)

/dev/mapper/swap_crypt:
 Timing buffered disk reads:  14 MB in  3.68 seconds =   3.81 MB/sec

The patch increases both PPC4XX_NUM_SD and PPC4XX_NUM_PD to 256.
This improves the performance considerably:

/dev/mapper/swap_crypt:
 Timing buffered disk reads: 104 MB in  3.03 seconds =  34.31 MB/sec

Furthermore, PPC4XX_LAST_SD, PPC4XX_LAST_GD and PPC4XX_LAST_PD
can be easily calculated from their respective PPC4XX_NUM_*
constant.
Signed-off-by: default avatarChristian Lamparter <chunkeey@gmail.com>
Signed-off-by: default avatarHerbert Xu <herbert@gondor.apana.org.au>
parent 333eb3ed
...@@ -36,12 +36,12 @@ ...@@ -36,12 +36,12 @@
#define PPC405EX_CE_RESET 0x00000008 #define PPC405EX_CE_RESET 0x00000008
#define CRYPTO4XX_CRYPTO_PRIORITY 300 #define CRYPTO4XX_CRYPTO_PRIORITY 300
#define PPC4XX_LAST_PD 63 #define PPC4XX_NUM_PD 256
#define PPC4XX_NUM_PD 64 #define PPC4XX_LAST_PD (PPC4XX_NUM_PD - 1)
#define PPC4XX_LAST_GD 1023
#define PPC4XX_NUM_GD 1024 #define PPC4XX_NUM_GD 1024
#define PPC4XX_LAST_SD 63 #define PPC4XX_LAST_GD (PPC4XX_NUM_GD - 1)
#define PPC4XX_NUM_SD 64 #define PPC4XX_NUM_SD 256
#define PPC4XX_LAST_SD (PPC4XX_NUM_SD - 1)
#define PPC4XX_SD_BUFFER_SIZE 2048 #define PPC4XX_SD_BUFFER_SIZE 2048
#define PD_ENTRY_INUSE 1 #define PD_ENTRY_INUSE 1
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment