Received: by 2002:a05:6358:16cd:b0:dc:6189:e246 with SMTP id r13csp482422rwl; Fri, 4 Nov 2022 02:46:41 -0700 (PDT) X-Google-Smtp-Source: AMsMyM6Hv4Hw2yKtr/eNplR83NaaZqb1yP+yuBWrosABRO515GaheHi+jqk2K7JAEj/hre2eQibD X-Received: by 2002:a05:6402:516e:b0:461:ebe2:f17d with SMTP id d14-20020a056402516e00b00461ebe2f17dmr35155810ede.181.1667555201293; Fri, 04 Nov 2022 02:46:41 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1667555201; cv=none; d=google.com; s=arc-20160816; b=js4vhgXfjKgXFe55xTbVz30yZk6rjlOsbzhIUkaX/nYJ1YAyr7JBMpDe+Gv3gTt0ZT B77bj7ZP0oBz/9yCwnm4nV9kadaUEkgh36vZjHJcqneNSVR4UNYRRCImdr9NfTff2alp Wt2KfMrumafawf0vCkcwkd3j97ebQvkTuZQJ6q+zE/zlh2r4hxl2KGQ1mUNgLB9DQF5R OGpV8FRS7Pnrz1JDglOQWArKP/eJ5Yv40hIoC9c3Qns9iFwe5SbmNChjqNBSeyixvQwu RnaTDWs8qkHbsRIlERcr0fooXDf/GIFwwYaa6iMu4FkGrNjG8L6pcxo4rueZZbg1rdom MkqA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-disposition:mime-version :references:message-id:subject:cc:to:from:date; bh=WtcFp3qcX39NU/pgAzooIDQtnarXv32Os13f9ACvnZg=; b=f/BmYzorBtNftc4vQurjue1qP9xHT2HDJgrvpt3IeSoITH49N52/tOuYl9hg62/pYF 9yrT2NKhAyrqBLYzlNjVlBgsnubnoexw4XFViDQWiEnwLs9cVBIjTIMEtg/g185yQVQ4 FiSpdn+EdMX1uKHvCfN8tezSkMrboVawX353wvpoeohxPgFtHX1uU0RMH28uUr8pyxoc yENRJpDtM9awI8cCSLaVCMQPe0953PCKxhE6L/o2dPF9WntuGmRSimHnMxzWNBEHMJWb yYorATtywdc11z+G1SXvlb3LmvVcp90wu1FbDb0JeOCpUIkysQ8ghU1OyIMaTI13uTqs yW8w== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-crypto-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-crypto-owner@vger.kernel.org Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id a16-20020aa7cf10000000b00461b93cfe9dsi3582226edy.55.2022.11.04.02.46.15; Fri, 04 Nov 2022 02:46:41 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-crypto-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-crypto-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-crypto-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229699AbiKDJjR (ORCPT + 99 others); Fri, 4 Nov 2022 05:39:17 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:54686 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229637AbiKDJjR (ORCPT ); Fri, 4 Nov 2022 05:39:17 -0400 Received: from formenos.hmeau.com (helcar.hmeau.com [216.24.177.18]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 2ED66625B; Fri, 4 Nov 2022 02:39:16 -0700 (PDT) Received: from loth.rohan.me.apana.org.au ([192.168.167.2]) by formenos.hmeau.com with smtp (Exim 4.94.2 #2 (Debian)) id 1oqt9Z-00A29z-2P; Fri, 04 Nov 2022 17:38:58 +0800 Received: by loth.rohan.me.apana.org.au (sSMTP sendmail emulation); Fri, 04 Nov 2022 17:38:57 +0800 Date: Fri, 4 Nov 2022 17:38:57 +0800 From: Herbert Xu To: Tianjia Zhang Cc: "David S. Miller" , Jussi Kivilinna , Ard Biesheuvel , Mark Brown , Catalin Marinas , Will Deacon , Maxime Coquelin , Alexandre Torgue , Eric Biggers , linux-crypto@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-stm32@st-md-mailman.stormreply.com Subject: Re: [PATCH v3 00/13] Optimizing SM3 and SM4 algorithms using arm64 NEON/CE instructions Message-ID: References: <20221027065505.15306-1-tianjia.zhang@linux.alibaba.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20221027065505.15306-1-tianjia.zhang@linux.alibaba.com> X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,SPF_HELO_NONE, SPF_PASS autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-crypto@vger.kernel.org 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 Home Page: http://gondor.apana.org.au/~herbert/ PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt