Received: by 2002:a05:6a10:206:0:0:0:0 with SMTP id 6csp5111229pxj; Wed, 26 May 2021 03:08:15 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxLLtXS6lmlQ00yBCXwDc9yuz+EIaueEEmxQWDEYZv3ScRlEB7sFjYHAC0toT3b9dGv4Wp6 X-Received: by 2002:a02:a316:: with SMTP id q22mr2318726jai.26.1622023695715; Wed, 26 May 2021 03:08:15 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1622023695; cv=none; d=google.com; s=arc-20160816; b=xFvrkitpuAxRd1DTfT4d7yMLu+V9/cqUI7LXxcJgOa7BbUIqDxa7Lg9Ozz7ubmZKj4 TQVFpOLe/JVn5R6BatKBv+36SgkER/0ojW8f0JPTifmFVUriYyzMq7XrGywRwLAiCHDh AdHVByoyGnJCPYvcXolTGkORI/2TPe98nqo2MKr33a3o49rZZE22O0E4Jg+R+71tJZ67 W9q/lQKKPcV1P7wGktcwEEABbMuBka7NufxNEJdvfiCK50LGl5jOH9fLy3o0DIGDDgcX oZAh6XMmsiYQ23+SXvqfMx0IVM2yCJgrUuN686gg2QvhhMJR3h5G6lwtlgfLCxEZBiYT 7G/Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from:dkim-signature; bh=PgYjPzfmpxSvcl9MU5yvOUaeWotp6ocQEO8EydfhW7Q=; b=YUkfYuONZR51OQCmojTIfQ1m1AXap+kEEyKC3ETj7ZzuoXZK9uZwJiWyfLG510Iz6u lvkPW3VFNz7Ki1gh+VpJZPmqGzNiW6TADC4Kq2Kto1appSiUQU/0jWenOcVhnqxRu16k kHXtYl1JblPyYPx547thaXrh6HuH+hzyPmNIzo/eIjroQb7pUpoG3Ey9IAfhIEPfBpo9 44ET/y07qJ1yfSAXYdLyYQOuzWwoXutQRl3WqgW8rsiVT03gCUdqR9ebqsdFN21jfoFs EkBkBAukY3Oj6JFJykYvUBS/Ge4DbA535YL7l2+TUklV3GHXzvu5sTJe8y3MwDVEdSIm p3XA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=nPqlnVRW; spf=pass (google.com: domain of linux-crypto-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-crypto-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id h6si19228992jaj.29.2021.05.26.03.07.54; Wed, 26 May 2021 03:08:15 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-crypto-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=nPqlnVRW; spf=pass (google.com: domain of linux-crypto-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-crypto-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233702AbhEZKJH (ORCPT + 99 others); Wed, 26 May 2021 06:09:07 -0400 Received: from mail.kernel.org ([198.145.29.99]:39730 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233771AbhEZKJF (ORCPT ); Wed, 26 May 2021 06:09:05 -0400 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 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-crypto@vger.kernel.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