lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Thu, 5 Dec 2019 09:53:46 +0000
From:   <Tudor.Ambarus@...rochip.com>
To:     <herbert@...dor.apana.org.au>
CC:     <Nicolas.Ferre@...rochip.com>, <alexandre.belloni@...tlin.com>,
        <Ludovic.Desroches@...rochip.com>, <linux-crypto@...r.kernel.org>,
        <linux-arm-kernel@...ts.infradead.org>,
        <linux-kernel@...r.kernel.org>, <Tudor.Ambarus@...rochip.com>
Subject: [PATCH 02/16] crypto: atmel-{sha,tdes} - Change algorithm priorities

From: Tudor Ambarus <tudor.ambarus@...rochip.com>

Increase the algorithm priorities so the hardware acceleration is now
preferred to the software computation: the generic drivers use 100
as priority.

Signed-off-by: Tudor Ambarus <tudor.ambarus@...rochip.com>
---
 drivers/crypto/atmel-sha.c  | 22 ++++++++++++----------
 drivers/crypto/atmel-tdes.c | 22 ++++++++++++----------
 2 files changed, 24 insertions(+), 20 deletions(-)

diff --git a/drivers/crypto/atmel-sha.c b/drivers/crypto/atmel-sha.c
index 8ea0e4bcde0d..3bbec58bf2cd 100644
--- a/drivers/crypto/atmel-sha.c
+++ b/drivers/crypto/atmel-sha.c
@@ -40,6 +40,8 @@
 #include "atmel-sha-regs.h"
 #include "atmel-authenc.h"
 
+#define ATMEL_SHA_PRIORITY	300
+
 /* SHA flags */
 #define SHA_FLAGS_BUSY			BIT(0)
 #define	SHA_FLAGS_FINAL			BIT(1)
@@ -1263,7 +1265,7 @@ static struct ahash_alg sha_1_256_algs[] = {
 		.base	= {
 			.cra_name		= "sha1",
 			.cra_driver_name	= "atmel-sha1",
-			.cra_priority		= 100,
+			.cra_priority		= ATMEL_SHA_PRIORITY,
 			.cra_flags		= CRYPTO_ALG_ASYNC,
 			.cra_blocksize		= SHA1_BLOCK_SIZE,
 			.cra_ctxsize		= sizeof(struct atmel_sha_ctx),
@@ -1287,7 +1289,7 @@ static struct ahash_alg sha_1_256_algs[] = {
 		.base	= {
 			.cra_name		= "sha256",
 			.cra_driver_name	= "atmel-sha256",
-			.cra_priority		= 100,
+			.cra_priority		= ATMEL_SHA_PRIORITY,
 			.cra_flags		= CRYPTO_ALG_ASYNC,
 			.cra_blocksize		= SHA256_BLOCK_SIZE,
 			.cra_ctxsize		= sizeof(struct atmel_sha_ctx),
@@ -1313,7 +1315,7 @@ static struct ahash_alg sha_224_alg = {
 		.base	= {
 			.cra_name		= "sha224",
 			.cra_driver_name	= "atmel-sha224",
-			.cra_priority		= 100,
+			.cra_priority		= ATMEL_SHA_PRIORITY,
 			.cra_flags		= CRYPTO_ALG_ASYNC,
 			.cra_blocksize		= SHA224_BLOCK_SIZE,
 			.cra_ctxsize		= sizeof(struct atmel_sha_ctx),
@@ -1339,7 +1341,7 @@ static struct ahash_alg sha_384_512_algs[] = {
 		.base	= {
 			.cra_name		= "sha384",
 			.cra_driver_name	= "atmel-sha384",
-			.cra_priority		= 100,
+			.cra_priority		= ATMEL_SHA_PRIORITY,
 			.cra_flags		= CRYPTO_ALG_ASYNC,
 			.cra_blocksize		= SHA384_BLOCK_SIZE,
 			.cra_ctxsize		= sizeof(struct atmel_sha_ctx),
@@ -1363,7 +1365,7 @@ static struct ahash_alg sha_384_512_algs[] = {
 		.base	= {
 			.cra_name		= "sha512",
 			.cra_driver_name	= "atmel-sha512",
-			.cra_priority		= 100,
+			.cra_priority		= ATMEL_SHA_PRIORITY,
 			.cra_flags		= CRYPTO_ALG_ASYNC,
 			.cra_blocksize		= SHA512_BLOCK_SIZE,
 			.cra_ctxsize		= sizeof(struct atmel_sha_ctx),
@@ -2099,7 +2101,7 @@ static struct ahash_alg sha_hmac_algs[] = {
 		.base	= {
 			.cra_name		= "hmac(sha1)",
 			.cra_driver_name	= "atmel-hmac-sha1",
-			.cra_priority		= 100,
+			.cra_priority		= ATMEL_SHA_PRIORITY,
 			.cra_flags		= CRYPTO_ALG_ASYNC,
 			.cra_blocksize		= SHA1_BLOCK_SIZE,
 			.cra_ctxsize		= sizeof(struct atmel_sha_hmac_ctx),
@@ -2124,7 +2126,7 @@ static struct ahash_alg sha_hmac_algs[] = {
 		.base	= {
 			.cra_name		= "hmac(sha224)",
 			.cra_driver_name	= "atmel-hmac-sha224",
-			.cra_priority		= 100,
+			.cra_priority		= ATMEL_SHA_PRIORITY,
 			.cra_flags		= CRYPTO_ALG_ASYNC,
 			.cra_blocksize		= SHA224_BLOCK_SIZE,
 			.cra_ctxsize		= sizeof(struct atmel_sha_hmac_ctx),
@@ -2149,7 +2151,7 @@ static struct ahash_alg sha_hmac_algs[] = {
 		.base	= {
 			.cra_name		= "hmac(sha256)",
 			.cra_driver_name	= "atmel-hmac-sha256",
-			.cra_priority		= 100,
+			.cra_priority		= ATMEL_SHA_PRIORITY,
 			.cra_flags		= CRYPTO_ALG_ASYNC,
 			.cra_blocksize		= SHA256_BLOCK_SIZE,
 			.cra_ctxsize		= sizeof(struct atmel_sha_hmac_ctx),
@@ -2174,7 +2176,7 @@ static struct ahash_alg sha_hmac_algs[] = {
 		.base	= {
 			.cra_name		= "hmac(sha384)",
 			.cra_driver_name	= "atmel-hmac-sha384",
-			.cra_priority		= 100,
+			.cra_priority		= ATMEL_SHA_PRIORITY,
 			.cra_flags		= CRYPTO_ALG_ASYNC,
 			.cra_blocksize		= SHA384_BLOCK_SIZE,
 			.cra_ctxsize		= sizeof(struct atmel_sha_hmac_ctx),
@@ -2199,7 +2201,7 @@ static struct ahash_alg sha_hmac_algs[] = {
 		.base	= {
 			.cra_name		= "hmac(sha512)",
 			.cra_driver_name	= "atmel-hmac-sha512",
-			.cra_priority		= 100,
+			.cra_priority		= ATMEL_SHA_PRIORITY,
 			.cra_flags		= CRYPTO_ALG_ASYNC,
 			.cra_blocksize		= SHA512_BLOCK_SIZE,
 			.cra_ctxsize		= sizeof(struct atmel_sha_hmac_ctx),
diff --git a/drivers/crypto/atmel-tdes.c b/drivers/crypto/atmel-tdes.c
index 9b69e7a26639..a6b36abba3d1 100644
--- a/drivers/crypto/atmel-tdes.c
+++ b/drivers/crypto/atmel-tdes.c
@@ -40,6 +40,8 @@
 #include <linux/platform_data/crypto-atmel.h>
 #include "atmel-tdes-regs.h"
 
+#define ATMEL_TDES_PRIORITY	300
+
 /* TDES flags  */
 #define TDES_FLAGS_MODE_MASK		0x00ff
 #define TDES_FLAGS_ENCRYPT	BIT(0)
@@ -929,7 +931,7 @@ static struct skcipher_alg tdes_algs[] = {
 {
 	.base.cra_name		= "ecb(des)",
 	.base.cra_driver_name	= "atmel-ecb-des",
-	.base.cra_priority	= 100,
+	.base.cra_priority	= ATMEL_TDES_PRIORITY,
 	.base.cra_flags		= CRYPTO_ALG_ASYNC,
 	.base.cra_blocksize	= DES_BLOCK_SIZE,
 	.base.cra_ctxsize	= sizeof(struct atmel_tdes_ctx),
@@ -946,7 +948,7 @@ static struct skcipher_alg tdes_algs[] = {
 {
 	.base.cra_name		= "cbc(des)",
 	.base.cra_driver_name	= "atmel-cbc-des",
-	.base.cra_priority	= 100,
+	.base.cra_priority	= ATMEL_TDES_PRIORITY,
 	.base.cra_flags		= CRYPTO_ALG_ASYNC,
 	.base.cra_blocksize	= DES_BLOCK_SIZE,
 	.base.cra_ctxsize	= sizeof(struct atmel_tdes_ctx),
@@ -964,7 +966,7 @@ static struct skcipher_alg tdes_algs[] = {
 {
 	.base.cra_name		= "cfb(des)",
 	.base.cra_driver_name	= "atmel-cfb-des",
-	.base.cra_priority	= 100,
+	.base.cra_priority	= ATMEL_TDES_PRIORITY,
 	.base.cra_flags		= CRYPTO_ALG_ASYNC,
 	.base.cra_blocksize	= DES_BLOCK_SIZE,
 	.base.cra_ctxsize	= sizeof(struct atmel_tdes_ctx),
@@ -982,7 +984,7 @@ static struct skcipher_alg tdes_algs[] = {
 {
 	.base.cra_name		= "cfb8(des)",
 	.base.cra_driver_name	= "atmel-cfb8-des",
-	.base.cra_priority	= 100,
+	.base.cra_priority	= ATMEL_TDES_PRIORITY,
 	.base.cra_flags		= CRYPTO_ALG_ASYNC,
 	.base.cra_blocksize	= CFB8_BLOCK_SIZE,
 	.base.cra_ctxsize	= sizeof(struct atmel_tdes_ctx),
@@ -1000,7 +1002,7 @@ static struct skcipher_alg tdes_algs[] = {
 {
 	.base.cra_name		= "cfb16(des)",
 	.base.cra_driver_name	= "atmel-cfb16-des",
-	.base.cra_priority	= 100,
+	.base.cra_priority	= ATMEL_TDES_PRIORITY,
 	.base.cra_flags		= CRYPTO_ALG_ASYNC,
 	.base.cra_blocksize	= CFB16_BLOCK_SIZE,
 	.base.cra_ctxsize	= sizeof(struct atmel_tdes_ctx),
@@ -1018,7 +1020,7 @@ static struct skcipher_alg tdes_algs[] = {
 {
 	.base.cra_name		= "cfb32(des)",
 	.base.cra_driver_name	= "atmel-cfb32-des",
-	.base.cra_priority	= 100,
+	.base.cra_priority	= ATMEL_TDES_PRIORITY,
 	.base.cra_flags		= CRYPTO_ALG_ASYNC,
 	.base.cra_blocksize	= CFB32_BLOCK_SIZE,
 	.base.cra_ctxsize	= sizeof(struct atmel_tdes_ctx),
@@ -1036,7 +1038,7 @@ static struct skcipher_alg tdes_algs[] = {
 {
 	.base.cra_name		= "ofb(des)",
 	.base.cra_driver_name	= "atmel-ofb-des",
-	.base.cra_priority	= 100,
+	.base.cra_priority	= ATMEL_TDES_PRIORITY,
 	.base.cra_flags		= CRYPTO_ALG_ASYNC,
 	.base.cra_blocksize	= DES_BLOCK_SIZE,
 	.base.cra_ctxsize	= sizeof(struct atmel_tdes_ctx),
@@ -1054,7 +1056,7 @@ static struct skcipher_alg tdes_algs[] = {
 {
 	.base.cra_name		= "ecb(des3_ede)",
 	.base.cra_driver_name	= "atmel-ecb-tdes",
-	.base.cra_priority	= 100,
+	.base.cra_priority	= ATMEL_TDES_PRIORITY,
 	.base.cra_flags		= CRYPTO_ALG_ASYNC,
 	.base.cra_blocksize	= DES_BLOCK_SIZE,
 	.base.cra_ctxsize	= sizeof(struct atmel_tdes_ctx),
@@ -1071,7 +1073,7 @@ static struct skcipher_alg tdes_algs[] = {
 {
 	.base.cra_name		= "cbc(des3_ede)",
 	.base.cra_driver_name	= "atmel-cbc-tdes",
-	.base.cra_priority	= 100,
+	.base.cra_priority	= ATMEL_TDES_PRIORITY,
 	.base.cra_flags		= CRYPTO_ALG_ASYNC,
 	.base.cra_blocksize	= DES_BLOCK_SIZE,
 	.base.cra_ctxsize	= sizeof(struct atmel_tdes_ctx),
@@ -1089,7 +1091,7 @@ static struct skcipher_alg tdes_algs[] = {
 {
 	.base.cra_name		= "ofb(des3_ede)",
 	.base.cra_driver_name	= "atmel-ofb-tdes",
-	.base.cra_priority	= 100,
+	.base.cra_priority	= ATMEL_TDES_PRIORITY,
 	.base.cra_flags		= CRYPTO_ALG_ASYNC,
 	.base.cra_blocksize	= DES_BLOCK_SIZE,
 	.base.cra_ctxsize	= sizeof(struct atmel_tdes_ctx),
-- 
2.14.5

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ