]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
lib/crypto: blake2s: Rename blake2s_state to blake2s_ctx
authorEric Biggers <ebiggers@kernel.org>
Sat, 18 Oct 2025 04:30:58 +0000 (21:30 -0700)
committerEric Biggers <ebiggers@kernel.org>
Thu, 30 Oct 2025 05:04:24 +0000 (22:04 -0700)
For consistency with the SHA-1, SHA-2, SHA-3 (in development), and MD5
library APIs, rename blake2s_state to blake2s_ctx.

As a refresher, the ctx name:

- Is a bit shorter.
- Avoids confusion with the compression function state, which is also
  often called the state (but is just part of the full context).
- Is consistent with OpenSSL.

Not a big deal, of course.  But consistency is nice.  With a BLAKE2b
library API about to be added, this is a convenient time to update this.

Reviewed-by: Ard Biesheuvel <ardb@kernel.org>
Link: https://lore.kernel.org/r/20251018043106.375964-3-ebiggers@kernel.org
Signed-off-by: Eric Biggers <ebiggers@kernel.org>
drivers/char/random.c
drivers/net/wireguard/cookie.c
drivers/net/wireguard/noise.c
include/crypto/blake2s.h
lib/crypto/arm/blake2s-core.S
lib/crypto/arm/blake2s.h
lib/crypto/blake2s.c
lib/crypto/tests/blake2s_kunit.c
lib/crypto/x86/blake2s.h

index 422c5c76571b950b7646dd2683378bca3a09527e..7e0486d8c51de05b9411a70f9265f2a0b06f9e71 100644 (file)
@@ -636,7 +636,7 @@ enum {
 };
 
 static struct {
-       struct blake2s_state hash;
+       struct blake2s_ctx hash;
        spinlock_t lock;
        unsigned int init_bits;
 } input_pool = {
index be1b83aae03bfa012b18e77f047cf04dd300d9b4..08731b3fa32b7864ba8eca55012a4ff623ce12fb 100644 (file)
@@ -33,7 +33,7 @@ static void precompute_key(u8 key[NOISE_SYMMETRIC_KEY_LEN],
                           const u8 pubkey[NOISE_PUBLIC_KEY_LEN],
                           const u8 label[COOKIE_KEY_LABEL_LEN])
 {
-       struct blake2s_state blake;
+       struct blake2s_ctx blake;
 
        blake2s_init(&blake, NOISE_SYMMETRIC_KEY_LEN);
        blake2s_update(&blake, label, COOKIE_KEY_LABEL_LEN);
@@ -91,7 +91,7 @@ static void compute_mac2(u8 mac2[COOKIE_LEN], const void *message, size_t len,
 static void make_cookie(u8 cookie[COOKIE_LEN], struct sk_buff *skb,
                        struct cookie_checker *checker)
 {
-       struct blake2s_state state;
+       struct blake2s_ctx blake;
 
        if (wg_birthdate_has_expired(checker->secret_birthdate,
                                     COOKIE_SECRET_MAX_AGE)) {
@@ -103,15 +103,15 @@ static void make_cookie(u8 cookie[COOKIE_LEN], struct sk_buff *skb,
 
        down_read(&checker->secret_lock);
 
-       blake2s_init_key(&state, COOKIE_LEN, checker->secret, NOISE_HASH_LEN);
+       blake2s_init_key(&blake, COOKIE_LEN, checker->secret, NOISE_HASH_LEN);
        if (skb->protocol == htons(ETH_P_IP))
-               blake2s_update(&state, (u8 *)&ip_hdr(skb)->saddr,
+               blake2s_update(&blake, (u8 *)&ip_hdr(skb)->saddr,
                               sizeof(struct in_addr));
        else if (skb->protocol == htons(ETH_P_IPV6))
-               blake2s_update(&state, (u8 *)&ipv6_hdr(skb)->saddr,
+               blake2s_update(&blake, (u8 *)&ipv6_hdr(skb)->saddr,
                               sizeof(struct in6_addr));
-       blake2s_update(&state, (u8 *)&udp_hdr(skb)->source, sizeof(__be16));
-       blake2s_final(&state, cookie);
+       blake2s_update(&blake, (u8 *)&udp_hdr(skb)->source, sizeof(__be16));
+       blake2s_final(&blake, cookie);
 
        up_read(&checker->secret_lock);
 }
index 306abb876c8057d295ba3ba5c3593b1e178c601c..1fe8468f0bef336cc03aca95c883214b48281ca4 100644 (file)
@@ -33,7 +33,7 @@ static atomic64_t keypair_counter = ATOMIC64_INIT(0);
 
 void __init wg_noise_init(void)
 {
-       struct blake2s_state blake;
+       struct blake2s_ctx blake;
 
        blake2s(NULL, 0, handshake_name, sizeof(handshake_name),
                handshake_init_chaining_key, NOISE_HASH_LEN);
@@ -304,33 +304,33 @@ void wg_noise_set_static_identity_private_key(
 
 static void hmac(u8 *out, const u8 *in, const u8 *key, const size_t inlen, const size_t keylen)
 {
-       struct blake2s_state state;
+       struct blake2s_ctx blake;
        u8 x_key[BLAKE2S_BLOCK_SIZE] __aligned(__alignof__(u32)) = { 0 };
        u8 i_hash[BLAKE2S_HASH_SIZE] __aligned(__alignof__(u32));
        int i;
 
        if (keylen > BLAKE2S_BLOCK_SIZE) {
-               blake2s_init(&state, BLAKE2S_HASH_SIZE);
-               blake2s_update(&state, key, keylen);
-               blake2s_final(&state, x_key);
+               blake2s_init(&blake, BLAKE2S_HASH_SIZE);
+               blake2s_update(&blake, key, keylen);
+               blake2s_final(&blake, x_key);
        } else
                memcpy(x_key, key, keylen);
 
        for (i = 0; i < BLAKE2S_BLOCK_SIZE; ++i)
                x_key[i] ^= 0x36;
 
-       blake2s_init(&state, BLAKE2S_HASH_SIZE);
-       blake2s_update(&state, x_key, BLAKE2S_BLOCK_SIZE);
-       blake2s_update(&state, in, inlen);
-       blake2s_final(&state, i_hash);
+       blake2s_init(&blake, BLAKE2S_HASH_SIZE);
+       blake2s_update(&blake, x_key, BLAKE2S_BLOCK_SIZE);
+       blake2s_update(&blake, in, inlen);
+       blake2s_final(&blake, i_hash);
 
        for (i = 0; i < BLAKE2S_BLOCK_SIZE; ++i)
                x_key[i] ^= 0x5c ^ 0x36;
 
-       blake2s_init(&state, BLAKE2S_HASH_SIZE);
-       blake2s_update(&state, x_key, BLAKE2S_BLOCK_SIZE);
-       blake2s_update(&state, i_hash, BLAKE2S_HASH_SIZE);
-       blake2s_final(&state, i_hash);
+       blake2s_init(&blake, BLAKE2S_HASH_SIZE);
+       blake2s_update(&blake, x_key, BLAKE2S_BLOCK_SIZE);
+       blake2s_update(&blake, i_hash, BLAKE2S_HASH_SIZE);
+       blake2s_final(&blake, i_hash);
 
        memcpy(out, i_hash, BLAKE2S_HASH_SIZE);
        memzero_explicit(x_key, BLAKE2S_BLOCK_SIZE);
@@ -431,7 +431,7 @@ static bool __must_check mix_precomputed_dh(u8 chaining_key[NOISE_HASH_LEN],
 
 static void mix_hash(u8 hash[NOISE_HASH_LEN], const u8 *src, size_t src_len)
 {
-       struct blake2s_state blake;
+       struct blake2s_ctx blake;
 
        blake2s_init(&blake, NOISE_HASH_LEN);
        blake2s_update(&blake, hash, NOISE_HASH_LEN);
index a7dd678725b2741b5a12c4cd1e64a10db32a9292..4c8d532ee97b3c010f04ba3f3fab49367f758e5d 100644 (file)
@@ -22,7 +22,7 @@ enum blake2s_lengths {
        BLAKE2S_256_HASH_SIZE = 32,
 };
 
-struct blake2s_state {
+struct blake2s_ctx {
        /* 'h', 't', and 'f' are used in assembly code, so keep them as-is. */
        u32 h[8];
        u32 t[2];
@@ -43,62 +43,61 @@ enum blake2s_iv {
        BLAKE2S_IV7 = 0x5BE0CD19UL,
 };
 
-static inline void __blake2s_init(struct blake2s_state *state, size_t outlen,
+static inline void __blake2s_init(struct blake2s_ctx *ctx, size_t outlen,
                                  const void *key, size_t keylen)
 {
-       state->h[0] = BLAKE2S_IV0 ^ (0x01010000 | keylen << 8 | outlen);
-       state->h[1] = BLAKE2S_IV1;
-       state->h[2] = BLAKE2S_IV2;
-       state->h[3] = BLAKE2S_IV3;
-       state->h[4] = BLAKE2S_IV4;
-       state->h[5] = BLAKE2S_IV5;
-       state->h[6] = BLAKE2S_IV6;
-       state->h[7] = BLAKE2S_IV7;
-       state->t[0] = 0;
-       state->t[1] = 0;
-       state->f[0] = 0;
-       state->f[1] = 0;
-       state->buflen = 0;
-       state->outlen = outlen;
+       ctx->h[0] = BLAKE2S_IV0 ^ (0x01010000 | keylen << 8 | outlen);
+       ctx->h[1] = BLAKE2S_IV1;
+       ctx->h[2] = BLAKE2S_IV2;
+       ctx->h[3] = BLAKE2S_IV3;
+       ctx->h[4] = BLAKE2S_IV4;
+       ctx->h[5] = BLAKE2S_IV5;
+       ctx->h[6] = BLAKE2S_IV6;
+       ctx->h[7] = BLAKE2S_IV7;
+       ctx->t[0] = 0;
+       ctx->t[1] = 0;
+       ctx->f[0] = 0;
+       ctx->f[1] = 0;
+       ctx->buflen = 0;
+       ctx->outlen = outlen;
        if (keylen) {
-               memcpy(state->buf, key, keylen);
-               memset(&state->buf[keylen], 0, BLAKE2S_BLOCK_SIZE - keylen);
-               state->buflen = BLAKE2S_BLOCK_SIZE;
+               memcpy(ctx->buf, key, keylen);
+               memset(&ctx->buf[keylen], 0, BLAKE2S_BLOCK_SIZE - keylen);
+               ctx->buflen = BLAKE2S_BLOCK_SIZE;
        }
 }
 
-static inline void blake2s_init(struct blake2s_state *state,
-                               const size_t outlen)
+static inline void blake2s_init(struct blake2s_ctx *ctx, const size_t outlen)
 {
-       __blake2s_init(state, outlen, NULL, 0);
+       __blake2s_init(ctx, outlen, NULL, 0);
 }
 
-static inline void blake2s_init_key(struct blake2s_state *state,
+static inline void blake2s_init_key(struct blake2s_ctx *ctx,
                                    const size_t outlen, const void *key,
                                    const size_t keylen)
 {
        WARN_ON(IS_ENABLED(DEBUG) && (!outlen || outlen > BLAKE2S_HASH_SIZE ||
                !key || !keylen || keylen > BLAKE2S_KEY_SIZE));
 
-       __blake2s_init(state, outlen, key, keylen);
+       __blake2s_init(ctx, outlen, key, keylen);
 }
 
-void blake2s_update(struct blake2s_state *state, const u8 *in, size_t inlen);
-void blake2s_final(struct blake2s_state *state, u8 *out);
+void blake2s_update(struct blake2s_ctx *ctx, const u8 *in, size_t inlen);
+void blake2s_final(struct blake2s_ctx *ctx, u8 *out);
 
 static inline void blake2s(const u8 *key, const size_t keylen,
                           const u8 *in, const size_t inlen,
                           u8 *out, const size_t outlen)
 {
-       struct blake2s_state state;
+       struct blake2s_ctx ctx;
 
        WARN_ON(IS_ENABLED(DEBUG) && ((!in && inlen > 0) || !out || !outlen ||
                outlen > BLAKE2S_HASH_SIZE || keylen > BLAKE2S_KEY_SIZE ||
                (!key && keylen)));
 
-       __blake2s_init(&state, outlen, key, keylen);
-       blake2s_update(&state, in, inlen);
-       blake2s_final(&state, out);
+       __blake2s_init(&ctx, outlen, key, keylen);
+       blake2s_update(&ctx, in, inlen);
+       blake2s_final(&ctx, out);
 }
 
 #endif /* _CRYPTO_BLAKE2S_H */
index 293f44fa8f316f8397ffec96e4d6c0826e7469ae..78e758a7cb3e246d761274ab9d6faf1488204595 100644 (file)
 .endm
 
 //
-// void blake2s_compress(struct blake2s_state *state,
+// void blake2s_compress(struct blake2s_ctx *ctx,
 //                      const u8 *block, size_t nblocks, u32 inc);
 //
-// Only the first three fields of struct blake2s_state are used:
+// Only the first three fields of struct blake2s_ctx are used:
 //     u32 h[8];       (inout)
 //     u32 t[2];       (inout)
 //     u32 f[2];       (in)
@@ -183,7 +183,7 @@ ENTRY(blake2s_compress)
        push            {r0-r2,r4-r11,lr}       // keep this an even number
 
 .Lnext_block:
-       // r0 is 'state'
+       // r0 is 'ctx'
        // r1 is 'block'
        // r3 is 'inc'
 
@@ -211,7 +211,7 @@ ENTRY(blake2s_compress)
 
        // Calculate v[8..15].  Push v[9..15] onto the stack, and leave space
        // for spilling v[8..9].  Leave v[8..9] in r8-r9.
-       mov             r14, r0                 // r14 = state
+       mov             r14, r0                 // r14 = ctx
        adr             r12, .Lblake2s_IV
        ldmia           r12!, {r8-r9}           // load IV[0..1]
        __ldrd          r0, r1, r14, 40         // load f[0..1]
@@ -275,7 +275,7 @@ ENTRY(blake2s_compress)
        // Advance to the next block, if there is one.  Note that if there are
        // multiple blocks, then 'inc' (the counter increment amount) must be
        // 64.  So we can simply set it to 64 without re-loading it.
-       ldm             sp, {r0, r1, r2}        // load (state, block, nblocks)
+       ldm             sp, {r0, r1, r2}        // load (ctx, block, nblocks)
        mov             r3, #64                 // set 'inc'
        subs            r2, r2, #1              // nblocks--
        str             r2, [sp, #8]
index aa7a97139ea74aadfb6f9d8f342fbfc509ffe0f0..ce009cd98de90ebe9ef2370d668c4a884306b8f8 100644 (file)
@@ -1,5 +1,5 @@
 /* SPDX-License-Identifier: GPL-2.0-or-later */
 
 /* defined in blake2s-core.S */
-void blake2s_compress(struct blake2s_state *state, const u8 *block,
-                     size_t nblocks, u32 inc);
+void blake2s_compress(struct blake2s_ctx *ctx,
+                     const u8 *block, size_t nblocks, u32 inc);
index 5638ed9d882d8b058e3aa89058e87a2fa8718203..1ad36cb29835fd7942298edcb13dcb1cd8481fe9 100644 (file)
@@ -29,15 +29,15 @@ static const u8 blake2s_sigma[10][16] = {
        { 10, 2, 8, 4, 7, 6, 1, 5, 15, 11, 9, 14, 3, 12, 13, 0 },
 };
 
-static inline void blake2s_increment_counter(struct blake2s_state *state,
+static inline void blake2s_increment_counter(struct blake2s_ctx *ctx,
                                             const u32 inc)
 {
-       state->t[0] += inc;
-       state->t[1] += (state->t[0] < inc);
+       ctx->t[0] += inc;
+       ctx->t[1] += (ctx->t[0] < inc);
 }
 
 static void __maybe_unused
-blake2s_compress_generic(struct blake2s_state *state, const u8 *block,
+blake2s_compress_generic(struct blake2s_ctx *ctx, const u8 *block,
                         size_t nblocks, const u32 inc)
 {
        u32 m[16];
@@ -48,18 +48,18 @@ blake2s_compress_generic(struct blake2s_state *state, const u8 *block,
                (nblocks > 1 && inc != BLAKE2S_BLOCK_SIZE));
 
        while (nblocks > 0) {
-               blake2s_increment_counter(state, inc);
+               blake2s_increment_counter(ctx, inc);
                memcpy(m, block, BLAKE2S_BLOCK_SIZE);
                le32_to_cpu_array(m, ARRAY_SIZE(m));
-               memcpy(v, state->h, 32);
+               memcpy(v, ctx->h, 32);
                v[ 8] = BLAKE2S_IV0;
                v[ 9] = BLAKE2S_IV1;
                v[10] = BLAKE2S_IV2;
                v[11] = BLAKE2S_IV3;
-               v[12] = BLAKE2S_IV4 ^ state->t[0];
-               v[13] = BLAKE2S_IV5 ^ state->t[1];
-               v[14] = BLAKE2S_IV6 ^ state->f[0];
-               v[15] = BLAKE2S_IV7 ^ state->f[1];
+               v[12] = BLAKE2S_IV4 ^ ctx->t[0];
+               v[13] = BLAKE2S_IV5 ^ ctx->t[1];
+               v[14] = BLAKE2S_IV6 ^ ctx->f[0];
+               v[15] = BLAKE2S_IV7 ^ ctx->f[1];
 
 #define G(r, i, a, b, c, d) do { \
        a += b + m[blake2s_sigma[r][2 * i + 0]]; \
@@ -97,7 +97,7 @@ blake2s_compress_generic(struct blake2s_state *state, const u8 *block,
 #undef ROUND
 
                for (i = 0; i < 8; ++i)
-                       state->h[i] ^= v[i] ^ v[i + 8];
+                       ctx->h[i] ^= v[i] ^ v[i + 8];
 
                block += BLAKE2S_BLOCK_SIZE;
                --nblocks;
@@ -110,45 +110,45 @@ blake2s_compress_generic(struct blake2s_state *state, const u8 *block,
 #define blake2s_compress blake2s_compress_generic
 #endif
 
-static inline void blake2s_set_lastblock(struct blake2s_state *state)
+static inline void blake2s_set_lastblock(struct blake2s_ctx *ctx)
 {
-       state->f[0] = -1;
+       ctx->f[0] = -1;
 }
 
-void blake2s_update(struct blake2s_state *state, const u8 *in, size_t inlen)
+void blake2s_update(struct blake2s_ctx *ctx, const u8 *in, size_t inlen)
 {
-       const size_t fill = BLAKE2S_BLOCK_SIZE - state->buflen;
+       const size_t fill = BLAKE2S_BLOCK_SIZE - ctx->buflen;
 
        if (unlikely(!inlen))
                return;
        if (inlen > fill) {
-               memcpy(state->buf + state->buflen, in, fill);
-               blake2s_compress(state, state->buf, 1, BLAKE2S_BLOCK_SIZE);
-               state->buflen = 0;
+               memcpy(ctx->buf + ctx->buflen, in, fill);
+               blake2s_compress(ctx, ctx->buf, 1, BLAKE2S_BLOCK_SIZE);
+               ctx->buflen = 0;
                in += fill;
                inlen -= fill;
        }
        if (inlen > BLAKE2S_BLOCK_SIZE) {
                const size_t nblocks = DIV_ROUND_UP(inlen, BLAKE2S_BLOCK_SIZE);
-               blake2s_compress(state, in, nblocks - 1, BLAKE2S_BLOCK_SIZE);
+               blake2s_compress(ctx, in, nblocks - 1, BLAKE2S_BLOCK_SIZE);
                in += BLAKE2S_BLOCK_SIZE * (nblocks - 1);
                inlen -= BLAKE2S_BLOCK_SIZE * (nblocks - 1);
        }
-       memcpy(state->buf + state->buflen, in, inlen);
-       state->buflen += inlen;
+       memcpy(ctx->buf + ctx->buflen, in, inlen);
+       ctx->buflen += inlen;
 }
 EXPORT_SYMBOL(blake2s_update);
 
-void blake2s_final(struct blake2s_state *state, u8 *out)
+void blake2s_final(struct blake2s_ctx *ctx, u8 *out)
 {
        WARN_ON(IS_ENABLED(DEBUG) && !out);
-       blake2s_set_lastblock(state);
-       memset(state->buf + state->buflen, 0,
-              BLAKE2S_BLOCK_SIZE - state->buflen); /* Padding */
-       blake2s_compress(state, state->buf, 1, state->buflen);
-       cpu_to_le32_array(state->h, ARRAY_SIZE(state->h));
-       memcpy(out, state->h, state->outlen);
-       memzero_explicit(state, sizeof(*state));
+       blake2s_set_lastblock(ctx);
+       memset(ctx->buf + ctx->buflen, 0,
+              BLAKE2S_BLOCK_SIZE - ctx->buflen); /* Padding */
+       blake2s_compress(ctx, ctx->buf, 1, ctx->buflen);
+       cpu_to_le32_array(ctx->h, ARRAY_SIZE(ctx->h));
+       memcpy(out, ctx->h, ctx->outlen);
+       memzero_explicit(ctx, sizeof(*ctx));
 }
 EXPORT_SYMBOL(blake2s_final);
 
index 247bbdf7dc864ec9d629088f117ef0e2276c6620..6832d9aa7b82d343be52c635d45fbaf3ccbed2c8 100644 (file)
@@ -17,9 +17,9 @@ static void blake2s_default(const u8 *data, size_t len,
        blake2s(NULL, 0, data, len, out, BLAKE2S_HASH_SIZE);
 }
 
-static void blake2s_init_default(struct blake2s_state *state)
+static void blake2s_init_default(struct blake2s_ctx *ctx)
 {
-       blake2s_init(state, BLAKE2S_HASH_SIZE);
+       blake2s_init(ctx, BLAKE2S_HASH_SIZE);
 }
 
 /*
@@ -27,7 +27,7 @@ static void blake2s_init_default(struct blake2s_state *state)
  * with a key length of 0 and a hash length of BLAKE2S_HASH_SIZE.
  */
 #define HASH blake2s_default
-#define HASH_CTX blake2s_state
+#define HASH_CTX blake2s_ctx
 #define HASH_SIZE BLAKE2S_HASH_SIZE
 #define HASH_INIT blake2s_init_default
 #define HASH_UPDATE blake2s_update
@@ -44,19 +44,19 @@ static void test_blake2s_all_key_and_hash_lens(struct kunit *test)
        u8 *data = &test_buf[0];
        u8 *key = data + data_len;
        u8 *hash = key + BLAKE2S_KEY_SIZE;
-       struct blake2s_state main_state;
+       struct blake2s_ctx main_ctx;
        u8 main_hash[BLAKE2S_HASH_SIZE];
 
        rand_bytes_seeded_from_len(data, data_len);
-       blake2s_init(&main_state, BLAKE2S_HASH_SIZE);
+       blake2s_init(&main_ctx, BLAKE2S_HASH_SIZE);
        for (int key_len = 0; key_len <= BLAKE2S_KEY_SIZE; key_len++) {
                rand_bytes_seeded_from_len(key, key_len);
                for (int out_len = 1; out_len <= BLAKE2S_HASH_SIZE; out_len++) {
                        blake2s(key, key_len, data, data_len, hash, out_len);
-                       blake2s_update(&main_state, hash, out_len);
+                       blake2s_update(&main_ctx, hash, out_len);
                }
        }
-       blake2s_final(&main_state, main_hash);
+       blake2s_final(&main_ctx, main_hash);
        KUNIT_ASSERT_MEMEQ(test, main_hash, blake2s_keyed_testvec_consolidated,
                           BLAKE2S_HASH_SIZE);
 }
@@ -75,7 +75,7 @@ static void test_blake2s_with_guarded_key_buf(struct kunit *test)
                u8 *guarded_key = &test_buf[TEST_BUF_LEN - key_len];
                u8 hash1[BLAKE2S_HASH_SIZE];
                u8 hash2[BLAKE2S_HASH_SIZE];
-               struct blake2s_state state;
+               struct blake2s_ctx ctx;
 
                rand_bytes(key, key_len);
                memcpy(guarded_key, key, key_len);
@@ -86,10 +86,9 @@ static void test_blake2s_with_guarded_key_buf(struct kunit *test)
                        hash2, BLAKE2S_HASH_SIZE);
                KUNIT_ASSERT_MEMEQ(test, hash1, hash2, BLAKE2S_HASH_SIZE);
 
-               blake2s_init_key(&state, BLAKE2S_HASH_SIZE,
-                                guarded_key, key_len);
-               blake2s_update(&state, test_buf, data_len);
-               blake2s_final(&state, hash2);
+               blake2s_init_key(&ctx, BLAKE2S_HASH_SIZE, guarded_key, key_len);
+               blake2s_update(&ctx, test_buf, data_len);
+               blake2s_final(&ctx, hash2);
                KUNIT_ASSERT_MEMEQ(test, hash1, hash2, BLAKE2S_HASH_SIZE);
        }
 }
index b6d30d2fa045e36c184b4072c493be752a8aad70..de360935b8204dbf438088f1b0d70a929991838f 100644 (file)
 #include <linux/kernel.h>
 #include <linux/sizes.h>
 
-asmlinkage void blake2s_compress_ssse3(struct blake2s_state *state,
+asmlinkage void blake2s_compress_ssse3(struct blake2s_ctx *ctx,
                                       const u8 *block, const size_t nblocks,
                                       const u32 inc);
-asmlinkage void blake2s_compress_avx512(struct blake2s_state *state,
+asmlinkage void blake2s_compress_avx512(struct blake2s_ctx *ctx,
                                        const u8 *block, const size_t nblocks,
                                        const u32 inc);
 
 static __ro_after_init DEFINE_STATIC_KEY_FALSE(blake2s_use_ssse3);
 static __ro_after_init DEFINE_STATIC_KEY_FALSE(blake2s_use_avx512);
 
-static void blake2s_compress(struct blake2s_state *state, const u8 *block,
+static void blake2s_compress(struct blake2s_ctx *ctx, const u8 *block,
                             size_t nblocks, const u32 inc)
 {
        /* SIMD disables preemption, so relax after processing each page. */
        BUILD_BUG_ON(SZ_4K / BLAKE2S_BLOCK_SIZE < 8);
 
        if (!static_branch_likely(&blake2s_use_ssse3) || !may_use_simd()) {
-               blake2s_compress_generic(state, block, nblocks, inc);
+               blake2s_compress_generic(ctx, block, nblocks, inc);
                return;
        }
 
@@ -38,9 +38,9 @@ static void blake2s_compress(struct blake2s_state *state, const u8 *block,
 
                kernel_fpu_begin();
                if (static_branch_likely(&blake2s_use_avx512))
-                       blake2s_compress_avx512(state, block, blocks, inc);
+                       blake2s_compress_avx512(ctx, block, blocks, inc);
                else
-                       blake2s_compress_ssse3(state, block, blocks, inc);
+                       blake2s_compress_ssse3(ctx, block, blocks, inc);
                kernel_fpu_end();
 
                nblocks -= blocks;