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,URIBL_BLOCKED,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 183ACC433ED for ; Wed, 19 May 2021 12:53:19 +0000 (UTC) Received: from desiato.infradead.org (desiato.infradead.org [90.155.92.199]) (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 8F5FC6124C for ; Wed, 19 May 2021 12:53:18 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 8F5FC6124C 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=desiato.20200630; 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=CAKzsLTzgXxdSyNAK+UKfKkRITJkhL53qlnLV4YzwAo=; b=Qw/zgc848L5qm5JfQ60RDbyO0D QrlBdQo38+Fi2FaCCAv5+WZJwpNkKMSfVoj7Ts6pNOGS8+xLzGd6lE3yxECqvQvzTksL1Vmyv4sMp Tov1lEi8ghMQfQHW6ZNptUIJzFy+Khdtkeopf8Gtk/GEWRUlQnNpX8fa9q6BRfx+Ns5lxmBce+lUY Lrh5+VYbmpZLxSu/6Rn6OBdb0ZHLvJMxM6o/4Km6kuBQHqDwSHI/frfgoX1vgCvq4P706JIssMgfN 49HTu/1Z1v9zbSh4B7eMQ4hWy+a4+SuUgL6JcmnvqZc2rOtB8v56SpqktrA/GILgg9pVAkOJEIrFJ fNjZ04mg==; Received: from localhost ([::1] helo=desiato.infradead.org) by desiato.infradead.org with esmtp (Exim 4.94 #2 (Red Hat Linux)) id 1ljLg3-003yM7-K9; Wed, 19 May 2021 12:51:56 +0000 Received: from bombadil.infradead.org ([2607:7c80:54:e::133]) by desiato.infradead.org with esmtps (Exim 4.94 #2 (Red Hat Linux)) id 1ljKHo-003kiT-0A for linux-arm-kernel@desiato.infradead.org; Wed, 19 May 2021 11:22:48 +0000 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20210309; h=Content-Transfer-Encoding: MIME-Version:Message-Id:Date:Subject:Cc:To:From:Sender:Reply-To:Content-Type: Content-ID:Content-Description:In-Reply-To:References; bh=AobE6n8a5KpB+K4OiUTUy+bPqfKMp7YtQVTiaejjpz0=; b=Ld9lGvErK5Z2o2XOKB4dDSlcO2 LFm9ZpG6Pf4ncHxH+uiVmyuGv93hdH+IlBjhW4kt4Rw3WrciB5YQCZDjXtJI86X+tUOn77puMkafG 08sbG8vK/UCksTV86LIjSbTOAznT2wLbF3ZvjwMKDIyIvl5QBHe3NwtV4yadY8n6/yUgRwrpLJIyH /mKfPwROo7gMQFC0TfgY0I9c1lnzLDY0Ox+ygn8D3XKMHNCdyVtd6xBtv6j3RAqzcN/CX5yx7n8jp 3Hwj9Si9nnikQhZgHdEfWxWFa/+AOm0kQcjQlJBlsmrrKg99NiMfTfV/h03/ec2oVrPBhzZP0pAiX PWua4Kow==; Received: from mail.kernel.org ([198.145.29.99]) by bombadil.infradead.org with esmtps (Exim 4.94 #2 (Red Hat Linux)) id 1ljKHl-00FP0K-7V for linux-arm-kernel@lists.infradead.org; Wed, 19 May 2021 11:22:46 +0000 Received: by mail.kernel.org (Postfix) with ESMTPSA id 4745D611BF; Wed, 19 May 2021 11:22:43 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1621423364; bh=leATF6xB7khhsf31CJbhvizT6L2Nn6/9FnFi7jswHew=; h=From:To:Cc:Subject:Date:From; b=HAbIPP/mw/tWP55YJ9V9WVqyomYfanElyt9Czi95kw+LwT/eG8YDpFd30gz0/z6AO Pi34kBP+bTprpeG0yla3u8wmCCImvbG/JJ8lM72Op3j+yCCQaax+Ao/SKOpias30xs Z/0/pNAmb0FGWu3KKUSsOSEjOzYEVmmliggU7qVp1ybgy2EREVFbdMmr6KfL+HTOBQ 5//OcefrsA7NMu7kjwrjRVvC5Ow8tbjtGlOrxoIsWOYuij4VVqGY2TzWPk4+vQPDQB murPzGZbaAoXMTMVJ4lIxGeTiUpmoPMbOvaRCABQV61fzH8NppRxr7oEJSF2oNtSeL OqTV7ApgTH+zw== 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 v4 0/7] running kernel mode SIMD with softirqs disabled Date: Wed, 19 May 2021 13:22:32 +0200 Message-Id: <20210519112239.33664-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-20210519_042245_308434_72CBD36E X-CRM114-Status: GOOD ( 11.99 ) 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 likely to care about these specifics. Patch #1 addresses an issue in the skcipher walker which doesn't handle zero sized AEAD inputs entirely consistently, which is uncovered by the change in patch #7. Patches #2 and #3 add some sanity checks to the public AEAD and skcipher APIs to limit their availibility to either task or softirq context (which is the only way in which they are currently being used). Adding this restriction permits the arm64 crypto code to get rid of all scalar fallbacks, given that on this architecture, softirqs are 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 the remaining 4 patches. 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 (7): crypto: skcipher - handle zero sized inputs correctly crypto: aead - disallow en/decrypt for non-task or non-softirq context crypto: skcipher - disallow en/decrypt for non-task or non-softirq context 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 arch/arm64/crypto/Kconfig | 6 - arch/arm64/crypto/aes-ce-ccm-core.S | 1 + arch/arm64/crypto/aes-ce-ccm-glue.c | 183 +++++------------ arch/arm64/crypto/aes-glue.c | 102 ++-------- arch/arm64/crypto/aes-neonbs-glue.c | 122 +----------- arch/arm64/crypto/ghash-ce-glue.c | 209 +++++--------------- crypto/aead.c | 12 +- crypto/skcipher.c | 16 +- 8 files changed, 150 insertions(+), 501 deletions(-) -- 2.20.1 _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel