Received: by 2002:a05:7412:251c:b0:e2:908c:2ebd with SMTP id w28csp599059rda; Sun, 22 Oct 2023 01:18:59 -0700 (PDT) X-Google-Smtp-Source: AGHT+IG7YeqB8h52tJPHKGez7PeqyVVZk2HNf6j/deH0t6cnQgC4rYm1SuGUBWKY+Cs79PmiBJUQ X-Received: by 2002:a05:6358:9146:b0:140:f6ab:b11e with SMTP id r6-20020a056358914600b00140f6abb11emr7360214rwr.28.1697962738802; Sun, 22 Oct 2023 01:18:58 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1697962738; cv=none; d=google.com; s=arc-20160816; b=lMma7v8DGE26A9CT/b5WU8Szg9ILI0jWXyUMi7Neyzp6lt4XJ65w7vlqOhODzGkeDy F16yHJJXvLvBz0KrgFYWO6quQQEIOAWiBCADyw61SisVqEaMrA9e6f1ozVfMLNe2idO1 1QJkBPVnNUEeQ1xKasoQuWsAGP78Coidq/TrnREy3dbmOX8AJrhg+5aj8FaH9mzcX+QV Kq9Spd7iePqcXSk3S7mCVCps17PCLa3d6Iyf+ARh5SYrrQClo/iRb5A6N870bV/n7f8c LLRFgqPYMgBuPgKF7OeRVULdMlzg1qsqZ7kL4kY7t2D9/15NLygFUHzz6v5cIW1i8ZXu vm+A== 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 :references:in-reply-to:message-id:date:subject:to:from :dkim-signature; bh=tyeKkoBJZyeFMRkGDy5NpSiQiVmzU5OAtHbHdYb7khg=; fh=uKl1CTlin8qnxt56ErGp3UOINPCBskOXHDuKvJLDQbo=; b=ll+tiN7vqL6f9cKSXnxaiogLuCIQxc/M3CEegoXcnj8g2BodKi4TVBXmRGZ5iUglTc 4ZdaquuXQu1y8oUtKCsDu2u1aIGHFpyAF0M35Ab5CdSbzt/68PObic7zh0vhk2xylkCx dHFxuBAUHwX5W8VPArfEaz1SK+tgeTlvKweOXN45OS1ZSeu0vnOnvRcNuzvMCDX8U/r9 C2lDiM2cDwrCS/eQH21NqV4NoO6gtSUL1q+OMkIOnuZDQYG06LOJIhQrOkt3f/11dc8I ysJ/n8E1Wj3EjZIUolIO3taSAZBtX9U44Q97Q63neX5T0M1rJcAnrdAfklPgf8aUQ9ZH qu1A== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=kbMGf6BM; spf=pass (google.com: domain of linux-crypto-owner@vger.kernel.org designates 2620:137:e000::3:8 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 fry.vger.email (fry.vger.email. [2620:137:e000::3:8]) by mx.google.com with ESMTPS id k81-20020a628454000000b006be0857ab24si4628929pfd.19.2023.10.22.01.18.58 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 22 Oct 2023 01:18:58 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-crypto-owner@vger.kernel.org designates 2620:137:e000::3:8 as permitted sender) client-ip=2620:137:e000::3:8; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=kbMGf6BM; spf=pass (google.com: domain of linux-crypto-owner@vger.kernel.org designates 2620:137:e000::3:8 as permitted sender) smtp.mailfrom=linux-crypto-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by fry.vger.email (Postfix) with ESMTP id C30FC8088A92; Sun, 22 Oct 2023 01:18:55 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at fry.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231617AbjJVISt (ORCPT + 99 others); Sun, 22 Oct 2023 04:18:49 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:37148 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231408AbjJVISq (ORCPT ); Sun, 22 Oct 2023 04:18:46 -0400 Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id A5B27DA for ; Sun, 22 Oct 2023 01:18:44 -0700 (PDT) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 47E0DC433CB for ; Sun, 22 Oct 2023 08:18:44 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1697962724; bh=bQATfADIXiBxUHc7OZfuaiVgVmZJfg74IAsz7wBYD4w=; h=From:To:Subject:Date:In-Reply-To:References:From; b=kbMGf6BMeendzu5ePzbYBBMM5v7X/xK7EMh9zZs2A12PJdl2Du1edqOxhh4fhuaRF q2dfD4Vc743GPpqT994aPdgHjeDowjDFfQUoJgAKXd1I6s60iQAJKkU/NYy3CdjCbw 5jUy80wKlodC5x6xbqtco1TR+eLvBBtNygNkBTpCB109SKW11b4dwW+sPxuIzhFQz/ /HZ1GQBHa5Qccvq9YsAcPdjB66bGOpLxZi0ILLfZBOGRHNUETqq/sMxXmi31InqKjc YUgTQEpCNAtrp2o/IjW0pgD7N0Dhoxchv/VhXCHei7Vko/UvNO8GxG/qbX2MKqWqfl z4t3O//M7lzUg== From: Eric Biggers To: linux-crypto@vger.kernel.org Subject: [PATCH 03/30] crypto: sun8i-ce - remove unnecessary alignmask for ahashes Date: Sun, 22 Oct 2023 01:10:33 -0700 Message-ID: <20231022081100.123613-4-ebiggers@kernel.org> X-Mailer: git-send-email 2.42.0 In-Reply-To: <20231022081100.123613-1-ebiggers@kernel.org> References: <20231022081100.123613-1-ebiggers@kernel.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-1.2 required=5.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,MAILING_LIST_MULTI, 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 fry.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-crypto@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (fry.vger.email [0.0.0.0]); Sun, 22 Oct 2023 01:18:56 -0700 (PDT) From: Eric Biggers The crypto API's support for alignmasks for ahash algorithms is nearly useless, as its only effect is to cause the API to align the key and result buffers. The drivers that happen to be specifying an alignmask for ahash rarely actually need it. When they do, it's easily fixable, especially considering that these buffers cannot be used for DMA. In preparation for removing alignmask support from ahash, this patch makes the sun8i-ce driver no longer use it. This driver didn't actually rely on it; it only writes to the result buffer in sun8i_ce_hash_run(), simply using memcpy(). And this driver only supports unkeyed hash algorithms, so the key buffer need not be considered. Signed-off-by: Eric Biggers --- drivers/crypto/allwinner/sun8i-ce/sun8i-ce-core.c | 6 ------ 1 file changed, 6 deletions(-) diff --git a/drivers/crypto/allwinner/sun8i-ce/sun8i-ce-core.c b/drivers/crypto/allwinner/sun8i-ce/sun8i-ce-core.c index d4ccd5254280b..4362e60905b09 100644 --- a/drivers/crypto/allwinner/sun8i-ce/sun8i-ce-core.c +++ b/drivers/crypto/allwinner/sun8i-ce/sun8i-ce-core.c @@ -407,21 +407,20 @@ static struct sun8i_ce_alg_template ce_algs[] = { .import = sun8i_ce_hash_import, .init_tfm = sun8i_ce_hash_init_tfm, .exit_tfm = sun8i_ce_hash_exit_tfm, .halg = { .digestsize = MD5_DIGEST_SIZE, .statesize = sizeof(struct md5_state), .base = { .cra_name = "md5", .cra_driver_name = "md5-sun8i-ce", .cra_priority = 300, - .cra_alignmask = 3, .cra_flags = CRYPTO_ALG_TYPE_AHASH | CRYPTO_ALG_ASYNC | CRYPTO_ALG_NEED_FALLBACK, .cra_blocksize = MD5_HMAC_BLOCK_SIZE, .cra_ctxsize = sizeof(struct sun8i_ce_hash_tfm_ctx), .cra_module = THIS_MODULE, } } }, .alg.hash.op = { @@ -441,21 +440,20 @@ static struct sun8i_ce_alg_template ce_algs[] = { .import = sun8i_ce_hash_import, .init_tfm = sun8i_ce_hash_init_tfm, .exit_tfm = sun8i_ce_hash_exit_tfm, .halg = { .digestsize = SHA1_DIGEST_SIZE, .statesize = sizeof(struct sha1_state), .base = { .cra_name = "sha1", .cra_driver_name = "sha1-sun8i-ce", .cra_priority = 300, - .cra_alignmask = 3, .cra_flags = CRYPTO_ALG_TYPE_AHASH | CRYPTO_ALG_ASYNC | CRYPTO_ALG_NEED_FALLBACK, .cra_blocksize = SHA1_BLOCK_SIZE, .cra_ctxsize = sizeof(struct sun8i_ce_hash_tfm_ctx), .cra_module = THIS_MODULE, } } }, .alg.hash.op = { @@ -474,21 +472,20 @@ static struct sun8i_ce_alg_template ce_algs[] = { .import = sun8i_ce_hash_import, .init_tfm = sun8i_ce_hash_init_tfm, .exit_tfm = sun8i_ce_hash_exit_tfm, .halg = { .digestsize = SHA224_DIGEST_SIZE, .statesize = sizeof(struct sha256_state), .base = { .cra_name = "sha224", .cra_driver_name = "sha224-sun8i-ce", .cra_priority = 300, - .cra_alignmask = 3, .cra_flags = CRYPTO_ALG_TYPE_AHASH | CRYPTO_ALG_ASYNC | CRYPTO_ALG_NEED_FALLBACK, .cra_blocksize = SHA224_BLOCK_SIZE, .cra_ctxsize = sizeof(struct sun8i_ce_hash_tfm_ctx), .cra_module = THIS_MODULE, } } }, .alg.hash.op = { @@ -507,21 +504,20 @@ static struct sun8i_ce_alg_template ce_algs[] = { .import = sun8i_ce_hash_import, .init_tfm = sun8i_ce_hash_init_tfm, .exit_tfm = sun8i_ce_hash_exit_tfm, .halg = { .digestsize = SHA256_DIGEST_SIZE, .statesize = sizeof(struct sha256_state), .base = { .cra_name = "sha256", .cra_driver_name = "sha256-sun8i-ce", .cra_priority = 300, - .cra_alignmask = 3, .cra_flags = CRYPTO_ALG_TYPE_AHASH | CRYPTO_ALG_ASYNC | CRYPTO_ALG_NEED_FALLBACK, .cra_blocksize = SHA256_BLOCK_SIZE, .cra_ctxsize = sizeof(struct sun8i_ce_hash_tfm_ctx), .cra_module = THIS_MODULE, } } }, .alg.hash.op = { @@ -540,21 +536,20 @@ static struct sun8i_ce_alg_template ce_algs[] = { .import = sun8i_ce_hash_import, .init_tfm = sun8i_ce_hash_init_tfm, .exit_tfm = sun8i_ce_hash_exit_tfm, .halg = { .digestsize = SHA384_DIGEST_SIZE, .statesize = sizeof(struct sha512_state), .base = { .cra_name = "sha384", .cra_driver_name = "sha384-sun8i-ce", .cra_priority = 300, - .cra_alignmask = 3, .cra_flags = CRYPTO_ALG_TYPE_AHASH | CRYPTO_ALG_ASYNC | CRYPTO_ALG_NEED_FALLBACK, .cra_blocksize = SHA384_BLOCK_SIZE, .cra_ctxsize = sizeof(struct sun8i_ce_hash_tfm_ctx), .cra_module = THIS_MODULE, } } }, .alg.hash.op = { @@ -573,21 +568,20 @@ static struct sun8i_ce_alg_template ce_algs[] = { .import = sun8i_ce_hash_import, .init_tfm = sun8i_ce_hash_init_tfm, .exit_tfm = sun8i_ce_hash_exit_tfm, .halg = { .digestsize = SHA512_DIGEST_SIZE, .statesize = sizeof(struct sha512_state), .base = { .cra_name = "sha512", .cra_driver_name = "sha512-sun8i-ce", .cra_priority = 300, - .cra_alignmask = 3, .cra_flags = CRYPTO_ALG_TYPE_AHASH | CRYPTO_ALG_ASYNC | CRYPTO_ALG_NEED_FALLBACK, .cra_blocksize = SHA512_BLOCK_SIZE, .cra_ctxsize = sizeof(struct sun8i_ce_hash_tfm_ctx), .cra_module = THIS_MODULE, } } }, .alg.hash.op = { -- 2.42.0