arch/x86/crypto/aes-gcm-vaes-avx2.S | 1 + 1 file changed, 1 insertion(+)
Update aes_gcm_dec_final_vaes_avx2() to be consistent with
aes_gcm_dec_final_aesni() and aes_gcm_dec_final_vaes_avx512() by
initializing the full %rax return register instead of just %al.
Technically this is unnecessary, since these functions return bool. But
I think it's worth being extra careful with the result of the tag
comparison and also keeping the different implementations consistent.
Signed-off-by: Eric Biggers <ebiggers@kernel.org>
---
This patch is targeting libcrypto-next
arch/x86/crypto/aes-gcm-vaes-avx2.S | 1 +
1 file changed, 1 insertion(+)
diff --git a/arch/x86/crypto/aes-gcm-vaes-avx2.S b/arch/x86/crypto/aes-gcm-vaes-avx2.S
index d9754e683bde..93c9504a488f 100644
--- a/arch/x86/crypto/aes-gcm-vaes-avx2.S
+++ b/arch/x86/crypto/aes-gcm-vaes-avx2.S
@@ -1121,10 +1121,11 @@ SYM_FUNC_END(aes_gcm_aad_update_vaes_avx2)
vpxor (%rax), GHASH_ACC, GHASH_ACC
vaesenclast GHASH_ACC, %xmm0, %xmm0
lea .Lselect_high_bytes_table(%rip), %rax
vmovdqu (%rax, TAGLEN64), %xmm1
vpshufb BSWAP_MASK, %xmm1, %xmm1 // select low bytes, not high
+ xor %eax, %eax
vptest %xmm1, %xmm0
sete %al
.endif
// No need for vzeroupper here, since only used xmm registers were used.
RET
base-commit: 5a2a5e62a5216ba05d4481cf90d915f4de0bfde9
--
2.51.2
On Sat, Nov 01, 2025 at 06:52:56PM -0700, Eric Biggers wrote: > Update aes_gcm_dec_final_vaes_avx2() to be consistent with > aes_gcm_dec_final_aesni() and aes_gcm_dec_final_vaes_avx512() by > initializing the full %rax return register instead of just %al. > Technically this is unnecessary, since these functions return bool. But > I think it's worth being extra careful with the result of the tag > comparison and also keeping the different implementations consistent. > > Signed-off-by: Eric Biggers <ebiggers@kernel.org> > --- > > This patch is targeting libcrypto-next Applied to https://git.kernel.org/pub/scm/linux/kernel/git/ebiggers/linux.git/log/?h=libcrypto-next - Eric
On Sun, 2 Nov 2025 at 02:53, Eric Biggers <ebiggers@kernel.org> wrote: > > Update aes_gcm_dec_final_vaes_avx2() to be consistent with > aes_gcm_dec_final_aesni() and aes_gcm_dec_final_vaes_avx512() by > initializing the full %rax return register instead of just %al. > Technically this is unnecessary, since these functions return bool. But > I think it's worth being extra careful with the result of the tag > comparison and also keeping the different implementations consistent. > > Signed-off-by: Eric Biggers <ebiggers@kernel.org> > --- > > This patch is targeting libcrypto-next > > arch/x86/crypto/aes-gcm-vaes-avx2.S | 1 + > 1 file changed, 1 insertion(+) > Reviewed-by: Ard Biesheuvel <ardb@kernel.org>
© 2016 - 2026 Red Hat, Inc.