]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
crypto: qat - lower priority for skcipher and aead algorithms
authorGiovanni Cabiddu <giovanni.cabiddu@intel.com>
Fri, 13 Jun 2025 10:32:27 +0000 (11:32 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 28 Aug 2025 14:34:14 +0000 (16:34 +0200)
commit 8024774190a5ef2af2c5846f60a50b23e0980a32 upstream.

Most kernel applications utilizing the crypto API operate synchronously
and on small buffer sizes, therefore do not benefit from QAT acceleration.

Reduce the priority of QAT implementations for both skcipher and aead
algorithms, allowing more suitable alternatives to be selected by default.

Signed-off-by: Giovanni Cabiddu <giovanni.cabiddu@intel.com>
Link: https://lore.kernel.org/all/20250613012357.GA3603104@google.com/
Cc: stable@vger.kernel.org
Acked-by: Eric Biggers <ebiggers@kernel.org>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/crypto/intel/qat/qat_common/qat_algs.c

index c03a698511142e90757d9a43dd5acfc7144a6135..43e6dd9b77b7d45972c2e3373d72360161e168c6 100644 (file)
@@ -1277,7 +1277,7 @@ static struct aead_alg qat_aeads[] = { {
        .base = {
                .cra_name = "authenc(hmac(sha1),cbc(aes))",
                .cra_driver_name = "qat_aes_cbc_hmac_sha1",
-               .cra_priority = 4001,
+               .cra_priority = 100,
                .cra_flags = CRYPTO_ALG_ASYNC | CRYPTO_ALG_ALLOCATES_MEMORY,
                .cra_blocksize = AES_BLOCK_SIZE,
                .cra_ctxsize = sizeof(struct qat_alg_aead_ctx),
@@ -1294,7 +1294,7 @@ static struct aead_alg qat_aeads[] = { {
        .base = {
                .cra_name = "authenc(hmac(sha256),cbc(aes))",
                .cra_driver_name = "qat_aes_cbc_hmac_sha256",
-               .cra_priority = 4001,
+               .cra_priority = 100,
                .cra_flags = CRYPTO_ALG_ASYNC | CRYPTO_ALG_ALLOCATES_MEMORY,
                .cra_blocksize = AES_BLOCK_SIZE,
                .cra_ctxsize = sizeof(struct qat_alg_aead_ctx),
@@ -1311,7 +1311,7 @@ static struct aead_alg qat_aeads[] = { {
        .base = {
                .cra_name = "authenc(hmac(sha512),cbc(aes))",
                .cra_driver_name = "qat_aes_cbc_hmac_sha512",
-               .cra_priority = 4001,
+               .cra_priority = 100,
                .cra_flags = CRYPTO_ALG_ASYNC | CRYPTO_ALG_ALLOCATES_MEMORY,
                .cra_blocksize = AES_BLOCK_SIZE,
                .cra_ctxsize = sizeof(struct qat_alg_aead_ctx),
@@ -1329,7 +1329,7 @@ static struct aead_alg qat_aeads[] = { {
 static struct skcipher_alg qat_skciphers[] = { {
        .base.cra_name = "cbc(aes)",
        .base.cra_driver_name = "qat_aes_cbc",
-       .base.cra_priority = 4001,
+       .base.cra_priority = 100,
        .base.cra_flags = CRYPTO_ALG_ASYNC | CRYPTO_ALG_ALLOCATES_MEMORY,
        .base.cra_blocksize = AES_BLOCK_SIZE,
        .base.cra_ctxsize = sizeof(struct qat_alg_skcipher_ctx),
@@ -1347,7 +1347,7 @@ static struct skcipher_alg qat_skciphers[] = { {
 }, {
        .base.cra_name = "ctr(aes)",
        .base.cra_driver_name = "qat_aes_ctr",
-       .base.cra_priority = 4001,
+       .base.cra_priority = 100,
        .base.cra_flags = CRYPTO_ALG_ASYNC | CRYPTO_ALG_ALLOCATES_MEMORY,
        .base.cra_blocksize = 1,
        .base.cra_ctxsize = sizeof(struct qat_alg_skcipher_ctx),
@@ -1365,7 +1365,7 @@ static struct skcipher_alg qat_skciphers[] = { {
 }, {
        .base.cra_name = "xts(aes)",
        .base.cra_driver_name = "qat_aes_xts",
-       .base.cra_priority = 4001,
+       .base.cra_priority = 100,
        .base.cra_flags = CRYPTO_ALG_ASYNC | CRYPTO_ALG_NEED_FALLBACK |
                          CRYPTO_ALG_ALLOCATES_MEMORY,
        .base.cra_blocksize = AES_BLOCK_SIZE,