[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <Y2TdseEBpJ7cu2Vg@gondor.apana.org.au>
Date: Fri, 4 Nov 2022 17:38:57 +0800
From: Herbert Xu <herbert@...dor.apana.org.au>
To: Tianjia Zhang <tianjia.zhang@...ux.alibaba.com>
Cc: "David S. Miller" <davem@...emloft.net>,
Jussi Kivilinna <jussi.kivilinna@....fi>,
Ard Biesheuvel <ardb@...nel.org>,
Mark Brown <broonie@...nel.org>,
Catalin Marinas <catalin.marinas@....com>,
Will Deacon <will@...nel.org>,
Maxime Coquelin <mcoquelin.stm32@...il.com>,
Alexandre Torgue <alexandre.torgue@...s.st.com>,
Eric Biggers <ebiggers@...nel.org>,
linux-crypto@...r.kernel.org, linux-arm-kernel@...ts.infradead.org,
linux-kernel@...r.kernel.org,
linux-stm32@...md-mailman.stormreply.com
Subject: Re: [PATCH v3 00/13] Optimizing SM3 and SM4 algorithms using arm64
NEON/CE instructions
On Thu, Oct 27, 2022 at 02:54:52PM +0800, Tianjia Zhang wrote:
> Hi folks,
>
> This series of patches uses different arm64 instruction sets to optimize
> the SM3 and SM4 algorithms, as well as the optimization of different
> modes of SM4.
>
> patch 1-2: NEON instruction set optimization for SM3
> patch 3: Refactored and streamlined SM4 NEON instruction implementation
> patch 4-5: support test for new SM4 mode
> patch 6-8: Refactored and streamlined SM4 CE instruction implementation
> patch 9-10: CE accelerated implementation of SM4 CTS/XTS
> patch 11: CE accelerated implementation of SM4 CMAC/XCBC/CBCMAC
> patch 12-13: CE accelerated implementation of SM4 CCM/GCM
>
> v3 change:
> - As Eric said, remove the code for ESSIV, including testmgr and tcrypt
>
> v2 changes:
> - remove ARMv9 SVE acceleration implementation
> - rebase onto v6.1-rc1
>
> Cheers,
> Tianjia
>
> Tianjia Zhang (13):
> crypto: arm64/sm3 - raise the priority of the CE implementation
> crypto: arm64/sm3 - add NEON assembly implementation
> crypto: arm64/sm4 - refactor and simplify NEON implementation
> crypto: testmgr - add SM4 cts-cbc/xts/xcbc test vectors
> crypto: tcrypt - add SM4 cts-cbc/xts/xcbc test
> crypto: arm64/sm4 - refactor and simplify CE implementation
> crypto: arm64/sm4 - simplify sm4_ce_expand_key() of CE implementation
> crypto: arm64/sm4 - export reusable CE acceleration functions
> crypto: arm64/sm4 - add CE implementation for CTS-CBC mode
> crypto: arm64/sm4 - add CE implementation for XTS mode
> crypto: arm64/sm4 - add CE implementation for cmac/xcbc/cbcmac
> crypto: arm64/sm4 - add CE implementation for CCM mode
> crypto: arm64/sm4 - add CE implementation for GCM mode
>
> arch/arm64/crypto/Kconfig | 47 +-
> arch/arm64/crypto/Makefile | 9 +
> arch/arm64/crypto/sm3-ce-glue.c | 2 +-
> arch/arm64/crypto/sm3-neon-core.S | 600 +++++++++++++
> arch/arm64/crypto/sm3-neon-glue.c | 103 +++
> arch/arm64/crypto/sm4-ce-asm.h | 209 +++++
> arch/arm64/crypto/sm4-ce-ccm-core.S | 328 ++++++++
> arch/arm64/crypto/sm4-ce-ccm-glue.c | 303 +++++++
> arch/arm64/crypto/sm4-ce-core.S | 1205 ++++++++++++++++++---------
> arch/arm64/crypto/sm4-ce-gcm-core.S | 741 ++++++++++++++++
> arch/arm64/crypto/sm4-ce-gcm-glue.c | 286 +++++++
> arch/arm64/crypto/sm4-ce-glue.c | 575 ++++++++++++-
> arch/arm64/crypto/sm4-ce.h | 16 +
> arch/arm64/crypto/sm4-neon-core.S | 630 +++++++++-----
> arch/arm64/crypto/sm4-neon-glue.c | 172 +---
> crypto/tcrypt.c | 21 +
> crypto/testmgr.c | 19 +
> crypto/testmgr.h | 977 ++++++++++++++++++++++
> 18 files changed, 5478 insertions(+), 765 deletions(-)
> create mode 100644 arch/arm64/crypto/sm3-neon-core.S
> create mode 100644 arch/arm64/crypto/sm3-neon-glue.c
> create mode 100644 arch/arm64/crypto/sm4-ce-asm.h
> create mode 100644 arch/arm64/crypto/sm4-ce-ccm-core.S
> create mode 100644 arch/arm64/crypto/sm4-ce-ccm-glue.c
> create mode 100644 arch/arm64/crypto/sm4-ce-gcm-core.S
> create mode 100644 arch/arm64/crypto/sm4-ce-gcm-glue.c
> create mode 100644 arch/arm64/crypto/sm4-ce.h
>
> --
> 2.24.3 (Apple Git-128)
All applied. Thanks.
--
Email: Herbert Xu <herbert@...dor.apana.org.au>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
Powered by blists - more mailing lists