From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-12.4 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE, SPF_PASS,USER_AGENT_GIT autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 96ED0C2B9F7 for ; Wed, 26 May 2021 12:24:29 +0000 (UTC) Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 4F59F6135F for ; Wed, 26 May 2021 12:24:29 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 4F59F6135F Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=kernel.org Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:Message-Id:Date:Subject:Cc :To:From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References: List-Owner; bh=69UMbkpWybbT9F0YMBMBO/ipbHpknUlQOz2YjDqBTmM=; b=P6KiQKTo7MaUB4 UEmEVEwZtqEVOEscgfkEViI9/pyme7PR/akCMiWxm1QxqpH+GcVW08Y0yr3fK2CdTKWzMNI4GL67h DnqvhQCtZbcQs0cu7gm7HADCBeiaXrb2F4HwFmFLbIch6P16mEB8AzrQ9IYi1T8dzno55sNK4KCZw Egkud0Q0CKLLDrMqP8k39LbX57vPSDHCAg3BA8sjI/dhPHTuOeSuNZJoPWwQbkuuSRqgRkgFIouFG QcoJE1MYP9TGp/Kjx3+4A363DQ/pYLzxo7u+Knu5aOetv7jeqNP5j03kFFtxBMIaB68eFetAAGTWC tEJ2fNZH16ark8Qc6riA==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1llsYZ-00Dw7K-A7; Wed, 26 May 2021 12:22:40 +0000 Received: from mail.kernel.org ([198.145.29.99]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1llqRr-00D5hl-44 for linux-arm-kernel@lists.infradead.org; Wed, 26 May 2021 10:07:36 +0000 Received: by mail.kernel.org (Postfix) with ESMTPSA id 1FF1B610C7; Wed, 26 May 2021 10:07:32 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1622023654; bh=wVLK+SA4YYEJiI1CuzFzq8CqiUL4K4pTwNzHQeI/tto=; h=From:To:Cc:Subject:Date:From; b=nPqlnVRW361vuZXf/1wA324CXtKD8whR0WMx4g5Pd6zYiknqyebxV+KrKQujsnWiP lV8EJ6OfG/ni0yh8Nwhqxu+gWhK8wrXumb9t03Dt3CvQTq22n74Piia5ugzkvHxB/W u13F10OaP7PyiVvT7dsqJnwpRgjjE6jdwvmaGhhaNK0t8zMf9e8niBr3YNqXZiy+rd zCcc1QSLgtPVM4o2jfiWf1rn896veZGSfw9cCZ9VByi3+NY3ygQDY8CVrISap7TTz2 hro2TsMpciAjFbTvh1yGj4JICjkN4bZrbBSXVJdCDZ6cgMz2shsk2Uqq+GvSsF26u3 L73tfT0X72+/g== From: Ard Biesheuvel To: linux-crypto@vger.kernel.org Cc: linux-arm-kernel@lists.infradead.org, ebiggers@kernel.org, herbert@gondor.apana.org.au, will@kernel.org, kernel-team@android.com, Ard Biesheuvel Subject: [PATCH v6 0/6] running kernel mode SIMD with softirqs disabled Date: Wed, 26 May 2021 12:07:23 +0200 Message-Id: <20210526100729.12939-1-ardb@kernel.org> X-Mailer: git-send-email 2.20.1 MIME-Version: 1.0 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20210526_030735_228394_0432DD26 X-CRM114-Status: GOOD ( 10.29 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org This is a follow-up to [0], but given that the arm64 architectural pieces have been merged for arm64, the only remaining changes are crypto specific. Therefore, the audience has been reduced to those people who are somewhat more likely to care about these specifics. The AEAD and skcipher APIs may only be called from task or softirq context. This permits the arm64 AEAD and skcipher code to get rid of all scalar fallbacks, given that on this architecture, softirqs are now no longer served while the SIMD unit is being used in kernel mode, which means that the scalar fallbacks are never needed. These are removed in this series. Changes since v5: - add Eric's R-b to patches #1 to #3 - split CCM changes into 3 separate patches Changes since v4: - drop skcipher_walk layer change to deal with zero sized walks - drop aead/skcipher layer sanity checks on invocations from hardirq context - add patch to clean up CCM a bit more after removing the SIMD code path Changes since v3: - clarify the nature of the issue addressed by patch #1, and apply the same fix to the skcipher walker - update patches #2 and #3 so that the failures can be observed by the crypto stats code [0] https://lore.kernel.org/linux-arm-kernel/20210302090118.30666-1-ardb@kernel.org/ Ard Biesheuvel (6): crypto: arm64/gcm-aes-ce - remove non-SIMD fallback path crypto: arm64/aes-neonbs - stop using SIMD helper for skciphers crypto: arm64/aes-ce - stop using SIMD helper for skciphers crypto: arm64/aes-ccm - remove non-SIMD fallback path crypto: arm64/aes-ccm - reduce NEON begin/end calls for common case crypto: arm64/aes-ccm - avoid by-ref argument for ce_aes_ccm_auth_data arch/arm64/crypto/Kconfig | 6 - arch/arm64/crypto/aes-ce-ccm-core.S | 24 +-- arch/arm64/crypto/aes-ce-ccm-glue.c | 196 ++++++------------ arch/arm64/crypto/aes-glue.c | 102 ++-------- arch/arm64/crypto/aes-neonbs-glue.c | 122 +----------- arch/arm64/crypto/ghash-ce-glue.c | 209 +++++--------------- 6 files changed, 141 insertions(+), 518 deletions(-) -- 2.20.1 _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel