crypto: x86/poly1305 - emit does base conversion itself
authorJason A. Donenfeld <Jason@zx2c4.com>
Fri, 17 Jan 2020 10:42:22 +0000 (11:42 +0100)
committerHerbert Xu <herbert@gondor.apana.org.au>
Wed, 22 Jan 2020 08:21:11 +0000 (16:21 +0800)
The emit code does optional base conversion itself in assembly, so we
don't need to do that here. Also, neither one of these functions uses
simd instructions, so checking for that doesn't make sense either.

Signed-off-by: Jason A. Donenfeld <Jason@zx2c4.com>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
arch/x86/crypto/poly1305_glue.c

index 657363588e0c8d2e21ae31f403af77df3ba563aa..79bb58737d528df3104dc922bfc6c228193d4ae0 100644 (file)
@@ -123,13 +123,9 @@ static void poly1305_simd_blocks(void *ctx, const u8 *inp, size_t len,
 static void poly1305_simd_emit(void *ctx, u8 mac[POLY1305_DIGEST_SIZE],
                               const u32 nonce[4])
 {
-       struct poly1305_arch_internal *state = ctx;
-
-       if (!IS_ENABLED(CONFIG_AS_AVX) || !static_branch_likely(&poly1305_use_avx) ||
-           !state->is_base2_26 || !crypto_simd_usable()) {
-               convert_to_base2_64(ctx);
+       if (!IS_ENABLED(CONFIG_AS_AVX) || !static_branch_likely(&poly1305_use_avx))
                poly1305_emit_x86_64(ctx, mac, nonce);
-       else
+       else
                poly1305_emit_avx(ctx, mac, nonce);
 }