[CRYPTO] cipher: Set alignmask for multi-byte loads
authorHerbert Xu <herbert@gondor.apana.org.au>
Sat, 7 Jan 2006 05:38:15 +0000 (16:38 +1100)
committerDavid S. Miller <davem@sunset.davemloft.net>
Mon, 9 Jan 2006 22:16:00 +0000 (14:16 -0800)
Many cipher implementations use 4-byte/8-byte loads/stores which require
alignment on some architectures.  This patch explicitly sets the alignment
requirements for them.

Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
crypto/aes.c
crypto/anubis.c
crypto/blowfish.c
crypto/cast5.c
crypto/cast6.c
crypto/des.c
crypto/khazad.c
crypto/serpent.c
crypto/tea.c
crypto/twofish.c

index b9b2afb..0a6a5c1 100644 (file)
@@ -423,6 +423,7 @@ static struct crypto_alg aes_alg = {
        .cra_flags              =       CRYPTO_ALG_TYPE_CIPHER,
        .cra_blocksize          =       AES_BLOCK_SIZE,
        .cra_ctxsize            =       sizeof(struct aes_ctx),
+       .cra_alignmask          =       3,
        .cra_module             =       THIS_MODULE,
        .cra_list               =       LIST_HEAD_INIT(aes_alg.cra_list),
        .cra_u                  =       {
index 94c4b1f..2c796bd 100644 (file)
@@ -677,6 +677,7 @@ static struct crypto_alg anubis_alg = {
        .cra_flags              =       CRYPTO_ALG_TYPE_CIPHER,
        .cra_blocksize          =       ANUBIS_BLOCK_SIZE,
        .cra_ctxsize            =       sizeof (struct anubis_ctx),
+       .cra_alignmask          =       3,
        .cra_module             =       THIS_MODULE,
        .cra_list               =       LIST_HEAD_INIT(anubis_alg.cra_list),
        .cra_u                  =       { .cipher = {
index 99fc459..7f710b2 100644 (file)
@@ -453,6 +453,7 @@ static struct crypto_alg alg = {
        .cra_flags              =       CRYPTO_ALG_TYPE_CIPHER,
        .cra_blocksize          =       BF_BLOCK_SIZE,
        .cra_ctxsize            =       sizeof(struct bf_ctx),
+       .cra_alignmask          =       3,
        .cra_module             =       THIS_MODULE,
        .cra_list               =       LIST_HEAD_INIT(alg.cra_list),
        .cra_u                  =       { .cipher = {
index 282641c..8834c85 100644 (file)
@@ -809,6 +809,7 @@ static struct crypto_alg alg = {
        .cra_flags      = CRYPTO_ALG_TYPE_CIPHER,
        .cra_blocksize  = CAST5_BLOCK_SIZE,
        .cra_ctxsize    = sizeof(struct cast5_ctx),
+       .cra_alignmask  = 3,
        .cra_module     = THIS_MODULE,
        .cra_list       = LIST_HEAD_INIT(alg.cra_list),
        .cra_u          = {
index d317fff..9e28740 100644 (file)
@@ -513,6 +513,7 @@ static struct crypto_alg alg = {
        .cra_flags = CRYPTO_ALG_TYPE_CIPHER,
        .cra_blocksize = CAST6_BLOCK_SIZE,
        .cra_ctxsize = sizeof(struct cast6_ctx),
+       .cra_alignmask = 3,
        .cra_module = THIS_MODULE,
        .cra_list = LIST_HEAD_INIT(alg.cra_list),
        .cra_u = {
diff --cc crypto/des.c
Simple merge
diff --cc crypto/khazad.c
Simple merge
Simple merge
diff --cc crypto/tea.c
Simple merge
Simple merge