From 9d77db3c730780c8ef5ccd4b66403ff5675cfe4e Mon Sep 17 00:00:00 2001 From: hc <hc@nodka.com> Date: Mon, 13 May 2024 10:30:14 +0000 Subject: [PATCH] modify sin led gpio --- kernel/arch/x86/crypto/cast5_avx_glue.c | 21 ++++++++++++--------- 1 files changed, 12 insertions(+), 9 deletions(-) diff --git a/kernel/arch/x86/crypto/cast5_avx_glue.c b/kernel/arch/x86/crypto/cast5_avx_glue.c index 2f8df8e..384ccb0 100644 --- a/kernel/arch/x86/crypto/cast5_avx_glue.c +++ b/kernel/arch/x86/crypto/cast5_avx_glue.c @@ -46,7 +46,7 @@ static int ecb_crypt(struct skcipher_request *req, bool enc) { - bool fpu_enabled; + bool fpu_enabled = false; struct crypto_skcipher *tfm = crypto_skcipher_reqtfm(req); struct cast5_ctx *ctx = crypto_skcipher_ctx(tfm); struct skcipher_walk walk; @@ -61,7 +61,7 @@ u8 *wsrc = walk.src.virt.addr; u8 *wdst = walk.dst.virt.addr; - fpu_enabled = cast5_fpu_begin(false, &walk, nbytes); + fpu_enabled = cast5_fpu_begin(fpu_enabled, &walk, nbytes); /* Process multi-block batch */ if (nbytes >= bsize * CAST5_PARALLEL_BLOCKS) { @@ -90,9 +90,10 @@ } while (nbytes >= bsize); done: - cast5_fpu_end(fpu_enabled); err = skcipher_walk_done(&walk, nbytes); } + + cast5_fpu_end(fpu_enabled); return err; } @@ -196,7 +197,7 @@ { struct crypto_skcipher *tfm = crypto_skcipher_reqtfm(req); struct cast5_ctx *ctx = crypto_skcipher_ctx(tfm); - bool fpu_enabled; + bool fpu_enabled = false; struct skcipher_walk walk; unsigned int nbytes; int err; @@ -204,11 +205,12 @@ err = skcipher_walk_virt(&walk, req, false); while ((nbytes = walk.nbytes)) { - fpu_enabled = cast5_fpu_begin(false, &walk, nbytes); + fpu_enabled = cast5_fpu_begin(fpu_enabled, &walk, nbytes); nbytes = __cbc_decrypt(ctx, &walk); - cast5_fpu_end(fpu_enabled); err = skcipher_walk_done(&walk, nbytes); } + + cast5_fpu_end(fpu_enabled); return err; } @@ -275,7 +277,7 @@ { struct crypto_skcipher *tfm = crypto_skcipher_reqtfm(req); struct cast5_ctx *ctx = crypto_skcipher_ctx(tfm); - bool fpu_enabled; + bool fpu_enabled = false; struct skcipher_walk walk; unsigned int nbytes; int err; @@ -283,12 +285,13 @@ err = skcipher_walk_virt(&walk, req, false); while ((nbytes = walk.nbytes) >= CAST5_BLOCK_SIZE) { - fpu_enabled = cast5_fpu_begin(false, &walk, nbytes); + fpu_enabled = cast5_fpu_begin(fpu_enabled, &walk, nbytes); nbytes = __ctr_crypt(&walk, ctx); - cast5_fpu_end(fpu_enabled); err = skcipher_walk_done(&walk, nbytes); } + cast5_fpu_end(fpu_enabled); + if (walk.nbytes) { ctr_crypt_final(&walk, ctx); err = skcipher_walk_done(&walk, 0); -- Gitblit v1.6.2