aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--arch/s390/crypto/sha.h2
-rw-r--r--arch/s390/crypto/sha512_s390.c14
2 files changed, 8 insertions, 8 deletions
diff --git a/arch/s390/crypto/sha.h b/arch/s390/crypto/sha.h
index 0a3cc17391443f..d757ccbce2b4f4 100644
--- a/arch/s390/crypto/sha.h
+++ b/arch/s390/crypto/sha.h
@@ -24,7 +24,7 @@ struct s390_sha_ctx {
union {
u32 state[CPACF_MAX_PARMBLOCK_SIZE / sizeof(u32)];
struct {
- u64 state[SHA512_DIGEST_SIZE];
+ u64 state[SHA512_DIGEST_SIZE / sizeof(u64)];
u64 count_hi;
} sha512;
};
diff --git a/arch/s390/crypto/sha512_s390.c b/arch/s390/crypto/sha512_s390.c
index 14818fcc9cd4f8..3c5175e6dda61a 100644
--- a/arch/s390/crypto/sha512_s390.c
+++ b/arch/s390/crypto/sha512_s390.c
@@ -22,13 +22,13 @@ static int sha512_init(struct shash_desc *desc)
struct s390_sha_ctx *ctx = shash_desc_ctx(desc);
ctx->sha512.state[0] = SHA512_H0;
- ctx->sha512.state[2] = SHA512_H1;
- ctx->sha512.state[4] = SHA512_H2;
- ctx->sha512.state[6] = SHA512_H3;
- ctx->sha512.state[8] = SHA512_H4;
- ctx->sha512.state[10] = SHA512_H5;
- ctx->sha512.state[12] = SHA512_H6;
- ctx->sha512.state[14] = SHA512_H7;
+ ctx->sha512.state[1] = SHA512_H1;
+ ctx->sha512.state[2] = SHA512_H2;
+ ctx->sha512.state[3] = SHA512_H3;
+ ctx->sha512.state[4] = SHA512_H4;
+ ctx->sha512.state[5] = SHA512_H5;
+ ctx->sha512.state[6] = SHA512_H6;
+ ctx->sha512.state[7] = SHA512_H7;
ctx->count = 0;
ctx->sha512.count_hi = 0;
ctx->func = CPACF_KIMD_SHA_512;