[PATCH] crypto/qat: add caching of the asym config

2025-05-14 Thread Arkadiusz Kusztal
Added caching option of asymmetric crypto parameters. This helps to avoid cleaning of unused data and allows introducing the options to reuse the previous setup. Signed-off-by: Arkadiusz Kusztal --- drivers/crypto/qat/qat_asym.c | 125 ++ drivers/crypto/qat

[PATCH] crypto/qat: fix out-of-place chain, cipher and auth headers

2025-04-27 Thread Arkadiusz Kusztal
This commit fixes a problem with overwriting data in the OOP header in RAW API crypto processing when using chain, cipher and auth algorithms. Signed-off-by: Arkadiusz Kusztal --- drivers/crypto/qat/dev/qat_crypto_pmd_gens.h | 146 +++ drivers/crypto/qat/dev/qat_sym_pmd_gen1.c

[PATCH] crypto/qat: fix out-of-place header bytes in aead raw api

2025-03-20 Thread Arkadiusz Kusztal
This commit fixes a problem with overwriting data in the OOP header in RAW API crypto processing when using AEAD algorithms. Fixes: 85fec6fd9674 ("crypto/qat: unify raw data path functions") Cc: sta...@dpdk.org Signed-off-by: Arkadiusz Kusztal --- drivers/crypto/qat/dev/qat_crypto_

[PATCH v2] common/qat: fix incorrect size in the parser

2025-03-11 Thread Arkadiusz Kusztal
The function `strlen` returns the size of the string without a terminating null-character, therefore a request to allocate memory space for a parsed argument is too small by 1. Fixes: 99ab2806687b ("common/qat: isolate parser arguments configuration") Cc: sta...@dpdk.org Signed-off-by:

[PATCH] crypto/qat: fix incorrect sm3 state size

2025-02-26 Thread Arkadiusz Kusztal
This commit fixes incorrectly set state size within the QAT PMD. Fixes: 75fd4bbc94ab ("crypto/qat: support SM3 hash algorithm") Cc: sta...@dpdk.org Signed-off-by: Arkadiusz Kusztal --- drivers/crypto/qat/qat_sym_session.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) di

[PATCH] app/test: fix the check of the oop header data

2025-02-26 Thread Arkadiusz Kusztal
.@dpdk.org Signed-off-by: Arkadiusz Kusztal --- app/test/test_cryptodev.c | 29 +++-- 1 file changed, 27 insertions(+), 2 deletions(-) diff --git a/app/test/test_cryptodev.c b/app/test/test_cryptodev.c index 441ecc6ad5..6ef43a784d 100644 --- a/app/test/test_cryptodev.c +++

[PATCH v7] net: add thread-safe crc api

2025-02-11 Thread Arkadiusz Kusztal
-by: Arkadiusz Kusztal --- v2: - added multi-process safety v3: - made the crc context opaque - versioned old APIs v4: - exported rte_net_crc_free symbol v5: - fixed unclear comments in release notes section - aligned `fall-through` comments v6: - fixed typos and code formatting - added entry to the

[PATCH v6] net: add thread-safe crc api

2025-02-10 Thread Arkadiusz Kusztal
-by: Arkadiusz Kusztal --- v2: - added multi-process safety v3: - made the crc context opaque - versioned old APIs v4: - exported rte_net_crc_free symbol v5: - fixed unclear comments in release notes section - aligned `fall-through` comments v6: - fixed typos and code formatting - added entry to the

[PATCH v5] net: add thread-safe crc api

2025-02-07 Thread Arkadiusz Kusztal
-by: Arkadiusz Kusztal --- v2: - added multi-process safety v3: - made the crc context opaque - versioned old APIs v4: - exported rte_net_crc_free symbol v5: - fixed unclear comments in release notes section - aligned `fall-through` comments app/test/test_crc.c| 169

[PATCH] common/qat: fix incorrect size in the parser

2025-02-07 Thread Arkadiusz Kusztal
The function `strlen` returns the size of the string without a terminating null-character, therefore a request to allocate memory space for a parsed argument is too small by 1. Fixes: 99ab2806687b ("common/qat: isolate parser arguments configuration") Cc: sta...@dpdk.org Signed-off-by:

[PATCH v4] net: add thread-safe crc api

2025-02-06 Thread Arkadiusz Kusztal
-by: Arkadiusz Kusztal --- v2: - added multi-process safety v3: - made the crc context opaque - versioned old APIs v4: - exported rte_net_crc_free symbol app/test/test_crc.c| 169 ++--- doc/guides/rel_notes/release_25_03.rst | 3 + drivers/crypto/qat

[PATCH v3] net: add thread-safe crc api

2025-02-06 Thread Arkadiusz Kusztal
-by: Arkadiusz Kusztal --- v2: - added multi-process safety v3: - made the crc context opaque - versioned old APIs app/test/test_crc.c| 169 ++--- doc/guides/rel_notes/release_25_03.rst | 3 + drivers/crypto/qat/qat_sym.h | 6 +- drivers/crypto

[PATCH v3] crypto/qat: fix ecdsa session handling

2024-11-06 Thread Arkadiusz Kusztal
.@dpdk.org Signed-off-by: Arkadiusz Kusztal --- v2: - added a generic solution v3: - replaced rte_memcpy with memcpy drivers/crypto/qat/qat_asym.c | 41 +-- 1 file changed, 39 insertions(+), 2 deletions(-) diff --git a/drivers/crypto/qat/qat_asym.c b/drivers/

[PATCH v8 1/3] cryptodev: add ec points to sm2 op

2024-11-04 Thread Arkadiusz Kusztal
In the case when PMD cannot support the full process of the SM2, but elliptic curve computation only, additional fields are needed to handle such a case. Points C1, kP therefore were added to the SM2 crypto operation struct. Signed-off-by: Arkadiusz Kusztal --- doc/guides/rel_notes

[PATCH v8 3/3] app/test: add test sm2 C1/Kp test cases

2024-11-04 Thread Arkadiusz Kusztal
This commit adds tests cases to be used when C1 or kP elliptic curve points need to be computed. Signed-off-by: Arkadiusz Kusztal --- app/test/test_cryptodev_asym.c | 134 + app/test/test_cryptodev_sm2_test_vectors.h | 112 - 2 files changed, 243

[PATCH v8 2/3] crypto/qat: add sm2 encryption/decryption function

2024-11-04 Thread Arkadiusz Kusztal
This commit adds SM2 elliptic curve based asymmetric encryption and decryption to the Intel QuickAssist Technology PMD. Depends-on: patch-147900 ("[v2] crypto/qat: fix ecdsa session handling") Signed-off-by: Arkadiusz Kusztal --- doc/guides/rel_notes/release_24_11.rst

[PATCH v8 0/3] add ec points to sm2 op

2024-11-04 Thread Arkadiusz Kusztal
issue - added the partial_flag to QAT capabilities Arkadiusz Kusztal (3): cryptodev: add ec points to sm2 op crypto/qat: add sm2 encryption/decryption function app/test: add test sm2 C1/Kp test cases app/test/test_cryptodev_asym.c| 134 + app/test

[PATCH v2] crypto/qat: fix ecdsa session handling

2024-11-04 Thread Arkadiusz Kusztal
Fixed a problem with setting the key in the session in the ECDSA alghorithm. Fixes: badc0c6f6d6a ("cryptodev: set private and public keys in EC session") Cc: sta...@dpdk.org Signed-off-by: Arkadiusz Kusztal --- drivers/crypto/qat/qat_asym.c | 41 +

[PATCH] crypto/qat: fix ecdsa session handling

2024-10-31 Thread Arkadiusz Kusztal
Fixed a problem with setting the key in the session in the ECDSA alghoritm. Fixes: badc0c6f6d6a ("cryptodev: set private and public keys in EC session") Cc: sta...@dpdk.org Signed-off-by: Arkadiusz Kusztal --- drivers/crypto/qat/qat_asym.c | 42 +

[PATCH] crypto/qat: fix an unset length of modexp/inv

2024-10-31 Thread Arkadiusz Kusztal
This commit fixes an unset length in modular algorithms in QAT asymmetric crypto PMD. Fixes: 3b78aa7b2317 ("crypto/qat: refactor asymmetric crypto functions") Cc: sta...@dpdk.org Signed-off-by: Arkadiusz Kusztal --- drivers/crypto/qat/qat_asym.c | 2 ++ 1 file changed, 2 insertion

[PATCH v7 1/3] cryptodev: add ec points to sm2 op

2024-10-23 Thread Arkadiusz Kusztal
In the case when PMD cannot support the full process of the SM2, but elliptic curve computation only, additional fields are needed to handle such a case. Points C1, kP therefore were added to the SM2 crypto operation struct. Signed-off-by: Arkadiusz Kusztal --- doc/guides/rel_notes

[PATCH v7 3/3] app/test: add test sm2 C1/Kp test cases

2024-10-23 Thread Arkadiusz Kusztal
This commit adds tests cases to be used when C1 or kP elliptic curve points need to be computed. Signed-off-by: Arkadiusz Kusztal --- app/test/test_cryptodev_asym.c | 138 - app/test/test_cryptodev_sm2_test_vectors.h | 112 - 2 files changed, 246

[PATCH v7 2/3] crypto/qat: add sm2 encryption/decryption function

2024-10-23 Thread Arkadiusz Kusztal
This commit adds SM2 elliptic curve based asymmetric encryption and decryption to the Intel QuickAssist Technology PMD. Signed-off-by: Arkadiusz Kusztal --- doc/guides/rel_notes/release_24_11.rst| 4 + .../common/qat/qat_adf/icp_qat_fw_mmp_ids.h | 3 + drivers/common/qat/qat_adf

[PATCH v7 0/3] add ec points to sm2 op

2024-10-23 Thread Arkadiusz Kusztal
capability - split API patches v5: - rebased - clarified usage of the partial flag v6: - removed already applied patch 1 - added ABI relase notes comment - removed camel case - added flag reference v7: - removed SM2 from auth features, in asym it was added in SM2 ECDSA patch Arkadiusz Kusztal (3

[PATCH v6 3/3] app/test: add test sm2 C1/Kp test cases

2024-10-22 Thread Arkadiusz Kusztal
This commit adds tests cases to be used when C1 or kP elliptic curve points need to be computed. Signed-off-by: Arkadiusz Kusztal --- app/test/test_cryptodev_asym.c | 138 - app/test/test_cryptodev_sm2_test_vectors.h | 112 - 2 files changed, 246

[PATCH v6 2/3] crypto/qat: add sm2 encryption/decryption function

2024-10-22 Thread Arkadiusz Kusztal
This commit adds SM2 elliptic curve based asymmetric encryption and decryption to the Intel QuickAssist Technology PMD. Signed-off-by: Arkadiusz Kusztal --- doc/guides/cryptodevs/features/qat.ini| 1 + doc/guides/rel_notes/release_24_11.rst| 4 + .../common/qat/qat_adf

[PATCH v6 1/3] cryptodev: add ec points to sm2 op

2024-10-22 Thread Arkadiusz Kusztal
In the case when PMD cannot support the full process of the SM2, but elliptic curve computation only, additional fields are needed to handle such a case. Points C1, kP therefore were added to the SM2 crypto operation struct. Signed-off-by: Arkadiusz Kusztal --- doc/guides/rel_notes

[PATCH v6 0/3] add ec points to sm2 op

2024-10-22 Thread Arkadiusz Kusztal
capability - split API patches v5: - rebased - clarified usage of the partial flag v6: - removed already applied patch 1 - added ABI relase notes comment - removed camel case - added flag reference Arkadiusz Kusztal (3): cryptodev: add ec points to sm2 op crypto/qat: add sm2 encryption/decryption

[PATCH v5 4/4] app/test: add test sm2 C1/Kp test cases

2024-10-09 Thread Arkadiusz Kusztal
This commit adds tests cases to be used when C1 or kP elliptic curve points need to be computed. Signed-off-by: Arkadiusz Kusztal --- app/test/test_cryptodev_asym.c | 138 - app/test/test_cryptodev_sm2_test_vectors.h | 112 ++- 2 files

[PATCH v5 2/4] cryptodev: add ec points to sm2 op

2024-10-09 Thread Arkadiusz Kusztal
In the case when PMD cannot support the full process of the SM2, but elliptic curve computation only, additional fields are needed to handle such a case. Points C1, kP therefore were added to the SM2 crypto operation struct. Signed-off-by: Arkadiusz Kusztal --- lib/cryptodev/rte_crypto_asym.h

[PATCH v5 3/4] crypto/qat: add sm2 encryption/decryption function

2024-10-09 Thread Arkadiusz Kusztal
This commit adds SM2 elliptic curve based asymmetric encryption and decryption to the Intel QuickAssist Technology PMD. Signed-off-by: Arkadiusz Kusztal --- doc/guides/cryptodevs/features/qat.ini | 1 + doc/guides/rel_notes/release_24_11.rst | 4 + drivers/common/qat

[PATCH v5 1/4] cryptodev: reorder structures in asym crypto header

2024-10-09 Thread Arkadiusz Kusztal
Asymmetric-crypto header has a simple structure that allows to keep logically separate blocks together. Therefore, xforms, ops, and generic structs may be appropriately ordered. This patch moves sm2-op structs to be placed along other algorithms-op structs. Signed-off-by: Arkadiusz Kusztal

[PATCH v5 0/4] add ec points to sm2 op

2024-10-09 Thread Arkadiusz Kusztal
ature flag - added QAT patches - added test patches v4: - replaced feature flag with capability - split API patches v5: - rebased - clarified usage of the partial flag Arkadiusz Kusztal (4): cryptodev: reorder structures in asym crypto header cryptodev: add ec points to sm2 op crypto/qa

[PATCH v4 4/4] app/test: add test sm2 C1/Kp test cases

2024-10-08 Thread Arkadiusz Kusztal
This commit adds tests cases to be used when C1 or kP elliptic curve points need to be computed. Signed-off-by: Arkadiusz Kusztal --- app/test/test_cryptodev_asym.c | 138 - app/test/test_cryptodev_sm2_test_vectors.h | 112 ++- 2 files

[PATCH v4 3/4] crypto/qat: add sm2 encryption/decryption function

2024-10-08 Thread Arkadiusz Kusztal
This commit adds SM2 elliptic curve based asymmetric encryption and decryption to the Intel QuickAssist Technology PMD. Signed-off-by: Arkadiusz Kusztal --- doc/guides/cryptodevs/features/qat.ini | 1 + doc/guides/rel_notes/release_24_11.rst | 4 + drivers/common/qat

[PATCH v4 2/4] cryptodev: add ec points to sm2 op

2024-10-08 Thread Arkadiusz Kusztal
In the case when PMD cannot support the full process of the SM2, but elliptic curve computation only, additional fields are needed to handle such a case. Points C1, kP therefore were added to the SM2 crypto operation struct. Signed-off-by: Arkadiusz Kusztal --- lib/cryptodev/rte_crypto_asym.h

[PATCH v4 1/4] cryptodev: reorder structures in asym crypto header

2024-10-08 Thread Arkadiusz Kusztal
Asymmetric-crypto header has a simple structure that allows to keep logically separate blocks together. Therefore, xforms, ops, and generic structs may be appropriately ordered. This patch moves sm2-op structs to be placed along other algorithms-op structs. Signed-off-by: Arkadiusz Kusztal

[PATCH v4 0/4] add ec points to sm2 op

2024-10-08 Thread Arkadiusz Kusztal
ed feature flag - added QAT patches - added test patches v4: - replaced feature flag with capability - split API patches Arkadiusz Kusztal (4): cryptodev: reorder structures in asym crypto header cryptodev: add ec points to sm2 op crypto/qat: add sm2 encryption/decryption function app/test

[PATCH v3 4/4] app/test: add test sm2 C1/Kp test cases

2024-10-08 Thread Arkadiusz Kusztal
This commit adds tests cases to be used when C1 or kP elliptic curve points need to be computed. Signed-off-by: Arkadiusz Kusztal --- app/test/test_cryptodev_asym.c | 148 - app/test/test_cryptodev_sm2_test_vectors.h | 112 +- 2 files

[PATCH v3 3/4] crypto/qat: add sm2 encryption/decryption function

2024-10-08 Thread Arkadiusz Kusztal
This commit adds SM2 elliptic curve based asymmetric encryption and decryption to the Intel QuickAssist Technology PMD. Signed-off-by: Arkadiusz Kusztal --- doc/guides/cryptodevs/features/qat.ini | 1 + doc/guides/rel_notes/release_24_11.rst | 4 + drivers/common/qat

[PATCH v3 1/4] cryptodev: add partial sm2 feature flag

2024-10-08 Thread Arkadiusz Kusztal
Due to complex ways of handling asymmetric cryptography algorithms, capabilities may differ between hardware and software PMDs, or even between hardware PMDs. One of the examples are algorithms that need an additional round of hashing, like SM2. Signed-off-by: Arkadiusz Kusztal --- lib

[PATCH v3 2/4] cryptodev: add ec points to sm2 op

2024-10-08 Thread Arkadiusz Kusztal
In the case when PMD cannot support the full process of the SM2, but elliptic curve computation only, additional fields are needed to handle such a case. Points C1, kP therefore were added to the SM2 crypto operation struct. Signed-off-by: Arkadiusz Kusztal --- lib/cryptodev/rte_crypto_asym.h

[PATCH v2 1/3] net: add thread-safe crc api

2024-10-01 Thread Arkadiusz Kusztal
processes will use the same CRC function when used with the same CRC context. It is an undefined behavior when process binaries are compiled with different SIMD capabilities when the same CRC context is used. Signed-off-by: Arkadiusz Kusztal --- lib/net/net_crc.h | 19 ++-- lib/net/rte_net_crc.c

[PATCH v2 3/3] test/crc: replace thread-unsafe api functions

2024-10-01 Thread Arkadiusz Kusztal
This patch replaces thread-unsafe CRC functions with the safe ones. Signed-off-by: Arkadiusz Kusztal --- app/test/test_crc.c | 168 +--- 1 file changed, 67 insertions(+), 101 deletions(-) diff --git a/app/test/test_crc.c b/app/test/test_crc.c

[PATCH v2 2/3] crypto/qat: use process safe crc api

2024-10-01 Thread Arkadiusz Kusztal
This patch replaces thread-unsafe CRC functions with the safe ones. Signed-off-by: Arkadiusz Kusztal --- doc/guides/cryptodevs/qat.rst| 6 ++ drivers/crypto/qat/qat_sym.h | 6 ++ drivers/crypto/qat/qat_sym_session.c | 3 +++ drivers/crypto/qat/qat_sym_session.h | 2 ++ 4

[PATCH v2 0/3] net: add thread-safe crc api

2024-10-01 Thread Arkadiusz Kusztal
functions as __rte_internal Arkadiusz Kusztal (3): net: add thread-safe crc api crypto/qat: use process safe crc api test/crc: replace thread-unsafe api functions app/test/test_crc.c | 168 --- doc/guides/cryptodevs/qat.rst| 6 + drivers/crypto/qat

[PATCH v2] cryptodev: add ec points to sm2 op

2024-09-29 Thread Arkadiusz Kusztal
In the case when PMD cannot support the full process of the SM2, but elliptic curve computation only, additional fields are needed to handle such a case. Points C1, kP therefore were added to the SM2 crypto operation struct. Signed-off-by: Arkadiusz Kusztal --- lib/cryptodev/rte_crypto_asym.h

[PATCH] app/test: refactor cryptodev test cases

2024-09-25 Thread Arkadiusz Kusztal
. Signed-off-by: Arkadiusz Kusztal --- Please note that this is work in progress, what is left to be done: - Rework security test cases, these will fail with current setup. - Fix OOP issue. OOP tests do not check for the prepended data in the OOP buffer. - Remove remaining test vectors from the .c

[PATCH 2/2] crypto/qat: fix thread-safety issue in the crc

2024-09-05 Thread Arkadiusz Kusztal
This patch fixes CRC thread-safety issue in the QAT PMD. Signed-off-by: Arkadiusz Kusztal --- drivers/crypto/qat/qat_sym.h | 3 +-- drivers/crypto/qat/qat_sym_session.c | 3 +++ drivers/crypto/qat/qat_sym_session.h | 2 ++ 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a

[PATCH 1/2] net: add thread-safe crc api

2024-09-05 Thread Arkadiusz Kusztal
The current net CRC API is not thread-safe, this patch solves this by adding another, thread-safe API functions. These functions are not safe when using between different processes, though. Signed-off-by: Arkadiusz Kusztal --- lib/net/rte_net_crc.c | 40

[PATCH] crypto/qat: fix incorrect placement of oop offset

2024-07-04 Thread Arkadiusz Kusztal
This patch fixes incorrect placement of OOP offset. Data preceding crypto operation is not copied to the output buffer, which is conformant to the API. Fixes: a815a04cea05 ("crypto/qat: support symmetric build op request") Cc: sta...@dpdk.org Signed-off-by: Arkadiusz Kusztal --- driv

[PATCH v2] common/qat: add legacy algorithm option

2024-05-05 Thread Arkadiusz Kusztal
This commit adds legacy algorithms flag to the qat_device struct. This will allow handling this flag within the device itself, and not using the global variable. Signed-off-by: Arkadiusz Kusztal --- v2: - added session parameters handling drivers/common/qat/qat_common.h | 9

[PATCH] common/qat: add legacy algorithm option

2024-04-18 Thread Arkadiusz Kusztal
This commit adds legacy algorithms flag to the qat_device struct. This will allow handling this flag within the device itself, and not using the global variable. Signed-off-by: Arkadiusz Kusztal --- drivers/common/qat/qat_common.h | 9 + drivers/common/qat/qat_device.c

[PATCH v3] app/test: fix rsa tests in qat suite

2024-03-21 Thread Arkadiusz Kusztal
;) Cc: sta...@dpdk.org Signed-off-by: Arkadiusz Kusztal --- v2: - removed camel case v3: - changed commit description app/test/test_cryptodev_asym.c | 102 ++--- app/test/test_cryptodev_rsa_test_vectors.h | 2 +- 2 files changed, 52 insertions(+), 52 deletion

[PATCH v2] app/crypto-perf-test: fix unset crc algorithm

2024-03-15 Thread Arkadiusz Kusztal
if this is not found, CRC API will pick the other highest possible extension, or scalar if no SIMD available. Signed-off-by: Arkadiusz Kusztal --- v2: - narrowed down the case to the docsis only app/test-crypto-perf/main.c | 4 1 file changed, 4 insertions(+) diff --git a/app/test-crypto

[PATCH] app/crypto-perf-test: fix unset crc algorithm

2024-03-13 Thread Arkadiusz Kusztal
if this is not found, CRC API will pick the other highest possible extension, or scalar if no SIMD available. Fixes: f8be1786b1b8 ("app/crypto-perf: introduce performance test application") Signed-off-by: Arkadiusz Kusztal --- app/test-crypto-perf/main.c | 3 +++ 1 file changed, 3

[PATCH v2] app/test: fix rsa tests in qat suite

2024-03-13 Thread Arkadiusz Kusztal
This commit fixes incorrectly set keys in the QAT testsuite for the RSA algorithm. Fixes: 9b5465867fb8 ("test/crypto: add RSA none padding cases") Cc: sta...@dpdk.org Signed-off-by: Arkadiusz Kusztal --- v2: - removed camel case app/test/test_cryptodev_asym.c

[PATCH] common/qat: fix null dereference in release function

2024-03-08 Thread Arkadiusz Kusztal
ned-off-by: Arkadiusz Kusztal --- drivers/common/qat/qat_device.c | 14 +++--- drivers/compress/qat/qat_comp_pmd.c | 6 -- drivers/crypto/qat/qat_asym.c | 5 ++--- drivers/crypto/qat/qat_sym.c| 4 ++-- 4 files changed, 15 insertions(+), 14 deletions(-) diff --git

[PATCH] crypto/qat: fix ccm null aad pointer segfault

2024-03-08 Thread Arkadiusz Kusztal
This commit fixes a segfault, that occurs when NULL pointer is being set to the aad pointer field. Fixes: a815a04cea05 ("crypto/qat: support symmetric build op request") Cc: sta...@dpdk.org Signed-off-by: Arkadiusz Kusztal --- drivers/crypto/qat/dev/qat_crypto_pmd_gens.h | 10 +++

[PATCH] app/test: fix rsa tests in qat suite

2024-03-08 Thread Arkadiusz Kusztal
This commit fixes incorrectly set keys in the QAT testsuite for the RSA algorithm. Fixes: 9b5465867fb8 ("test/crypto: add RSA none padding cases") Cc: sta...@dpdk.org Signed-off-by: Arkadiusz Kusztal --- app/test/test_cryptodev_asym.c | 74 +---

[PATCH v5 3/3] common/qat: fix incorrectly placed legacy flag

2024-03-01 Thread Arkadiusz Kusztal
This commit fixes a legacy flag, which was placed in a file that may not be included in a building process. Fixes: cffb726b7797 ("crypto/qat: enable insecure algorithms") Signed-off-by: Arkadiusz Kusztal --- drivers/common/qat/qat_device.c | 1 + drivers/crypto/qat/qat_sym.c| 1

[PATCH v5 2/3] common/qat: decouple pmds from the common code

2024-03-01 Thread Arkadiusz Kusztal
Service specific functions were moved to services files. Weak symbols for device create/destroy were removed, named private devs were replaced by an opaque array. Signed-off-by: Arkadiusz Kusztal --- drivers/common/qat/qat_device.c | 112 ++-- drivers/common

[PATCH v5 1/3] common/qat: isolate parser arguments configuration

2024-03-01 Thread Arkadiusz Kusztal
This commit isolates qat device arguments from the common code. Now arguments are defined per service, and only appear in the application if the service is compiled-in. Depends-on: patch-137678 ("common/qat: add virtual qat device (vQAT)") Signed-off-by: Arkadiusz Kusztal --- v2: -

[PATCH v5] common/qat: add virtual qat device (vQAT)

2024-03-01 Thread Arkadiusz Kusztal
This commit adds virtual QAT device to the Intel QuickAssist Technology PMD. There are three kinds of virtual QAT device defined which offer different QAT service to the customers: symmetric crypto, asymmetric crypto and compression. Signed-off-by: Arkadiusz Kusztal --- v2: - added symmetric

[PATCH v4 3/3] common/qat: fix incorrectly placed legacy flag

2024-02-29 Thread Arkadiusz Kusztal
This commit fixes a legacy flag, which was placed in a file that may not be included in a building process. Fixes: cffb726b7797 ("crypto/qat: enable insecure algorithms") Cc: vikash.chandrax.pod...@intel.com Signed-off-by: Arkadiusz Kusztal --- drivers/common/qat/qat_device.c | 1

[PATCH v4 2/3] common/qat: decouple pmds from the common code

2024-02-29 Thread Arkadiusz Kusztal
Service specific functions were moved to services files. Weak symbols for device create/destroy were removed, named private devs were replaced by an opaque array. Signed-off-by: Arkadiusz Kusztal --- drivers/common/qat/qat_device.c | 112 ++-- drivers/common

[PATCH v4 1/3] common/qat: isolate parser arguments configuration

2024-02-29 Thread Arkadiusz Kusztal
This commit isolates qat device arguments from the common code. Now arguments are defined per service, and only appear in the application if the service is compiled-in. Depends-on: patch-137466 ("common/qat: add virtual qat device (vQAT)") Signed-off-by: Arkadiusz Kusztal --- v2: -

[PATCH v4] common/qat: add virtual qat device (vQAT)

2024-02-29 Thread Arkadiusz Kusztal
This commit adds virtual QAT device to the Intel QuickAssist Technology PMD. There are three kinds of virtual QAT device defined which offer different QAT service to the customers: symmetric crypto, asymmetric crypto and compression. Signed-off-by: Arkadiusz Kusztal --- v2: - added symmetric

[PATCH v3 3/3] common/qat: fix incorrectly placed legacy flag

2024-02-29 Thread Arkadiusz Kusztal
This commit fixes a legacy flag, which was placed in a file that may not be included in a building process. Fixes: cffb726b7797 ("crypto/qat: enable insecure algorithms") Signed-off-by: Arkadiusz Kusztal --- drivers/common/qat/qat_device.c | 1 + drivers/crypto/qat/qat_sym.c| 1

[PATCH v3 2/3] common/qat: decouple pmds from the common code

2024-02-29 Thread Arkadiusz Kusztal
Service specific functions were moved to services files. Weak symbols for device create/destroy were removed, named private devs were replaced by an opaque array. Signed-off-by: Arkadiusz Kusztal --- drivers/common/qat/qat_device.c | 112 ++-- drivers/common

[PATCH v3 1/3] common/qat: isolate parser arguments configuration

2024-02-29 Thread Arkadiusz Kusztal
This commit isolates qat device arguments from the common code. Now arguments are defined per service, and only appear in the application if the service is compiled-in. Signed-off-by: Arkadiusz Kusztal --- drivers/common/qat/qat_common.c | 11 +++ drivers/common/qat/qat_common.h | 3

[PATCH v2 2/2] common/qat: decouple pmds from the common code

2024-02-22 Thread Arkadiusz Kusztal
Service specific functions were moved to services files. Weak symbols for device create/destroy were removed, named private devs were replaced by an opaque array. Signed-off-by: Arkadiusz Kusztal --- drivers/common/qat/qat_device.c | 112 ++-- drivers/common

[PATCH v2 1/2] drivers/qat: isolate parser arguments configuration

2024-02-22 Thread Arkadiusz Kusztal
This commit isolates qat device arguments from the common code. Now arguments are defined per service, and only appear in the application if the service is compiled-in. Signed-off-by: Arkadiusz Kusztal --- drivers/common/qat/qat_common.c | 11 +++ drivers/common/qat/qat_common.h | 3

[PATCH v3] common/qat: add virtual qat device (vQAT)

2024-02-20 Thread Arkadiusz Kusztal
This commit adds virtual QAT device to the Intel QuickAssist Technology PMD. There are three kinds of virtual QAT device defined which offer different QAT service to the customers: symmetric crypto, asymmetric crypto and compression. Signed-off-by: Arkadiusz Kusztal --- v2: - added symmetric

[PATCH v2] common/qat: add symmetric crypto virtual qat device (vQAT)

2024-02-18 Thread Arkadiusz Kusztal
This commit adds virtual QAT device to the Intel QuickAssist Technology PMD. Only symmetric crypto service is enabled with this commit. Signed-off-by: Arkadiusz Kusztal --- doc/guides/rel_notes/release_24_03.rst | 3 ++ drivers/common/qat/dev/qat_dev_gen4.c| 39

[PATCH 3/3] app/test: add test sm2 C1/Kp test cases

2024-01-29 Thread Arkadiusz Kusztal
This commit adds tests cases to be used when C1 or kP elliptic curve points need to be computed. Signed-off-by: Arkadiusz Kusztal --- app/test/test_cryptodev_asym.c | 116 - app/test/test_cryptodev_sm2_test_vectors.h | 112 +++- 2 files changed

[PATCH 2/3] crypto/qat: add sm2 encryption/decryption function

2024-01-29 Thread Arkadiusz Kusztal
This commit adds SM2 elliptic curve based asymmetric encryption and decryption to the Intel QuickAssist Technology PMD. Signed-off-by: Arkadiusz Kusztal --- .../common/qat/qat_adf/icp_qat_fw_mmp_ids.h | 3 + drivers/common/qat/qat_adf/qat_pke.h | 20 +++ drivers/crypto/qat

[PATCH 1/3] cryptodev: add ec points to sm2 op

2024-01-29 Thread Arkadiusz Kusztal
In the case when PMD cannot support full process of the SM2, but elliptic curve computation only, additional fields are needed to handle such a case. Points C1, kP therefore were added to the SM2 crypto operation struct. Signed-off-by: Arkadiusz Kusztal --- lib/cryptodev/rte_crypto_asym.h

[RFC PATCH] cryptodev: add sm2 key exchange and encryption for HW

2023-12-28 Thread Arkadiusz Kusztal
This commit adds comments for the proposal of addition of SM2 algorithm key exchange and encryption/decryption operation. Signed-off-by: Arkadiusz Kusztal --- lib/cryptodev/rte_crypto_asym.h | 16 1 file changed, 16 insertions(+) diff --git a/lib/cryptodev/rte_crypto_asym.h b

[PATCH] common/qat: make qat common code independent from services

2023-12-18 Thread Arkadiusz Kusztal
QAT common code should not depend on specific services, to the contrary, it should be used by the specific services. This commit decuples services (sym, asym, comp) from the common code. Signed-off-by: Arkadiusz Kusztal --- drivers/common/qat/qat_device.c | 183

[PATCH 2/2] common/qat: add vqat confiuration macros

2023-12-18 Thread Arkadiusz Kusztal
This commit adds vqat (virtual QAT device) configuration macros to the Intel QuickAssist Technology PMD. Signed-off-by: Arkadiusz Kusztal --- .../qat/qat_adf/adf_transport_access_macros_vqat.h | 82 ++ 1 file changed, 82 insertions(+) create mode 100644 drivers/common/qat

[PATCH 1/2] common/qat: add vqat definition to pmd map

2023-12-18 Thread Arkadiusz Kusztal
This commit adds vqat (virtual QAT device) to PMD PCI ID map. Signed-off-by: Arkadiusz Kusztal --- drivers/common/qat/qat_common.h | 1 + drivers/common/qat/qat_device.c | 2 ++ 2 files changed, 3 insertions(+) diff --git a/drivers/common/qat/qat_common.h b/drivers/common/qat/qat_common.h

[PATCH v3] common/qat: limit configuration to the primary process

2023-11-02 Thread Arkadiusz Kusztal
This change prevents certain configuration functions from being called by the secondary process. Signed-off-by: Arkadiusz Kusztal --- v2: - fixed incorrect function call - rephrased comments v3: - fixed incorrect debug message drivers/common/qat/qat_device.c | 115

[PATCH v2] crypto/qat: add sm2 ecdsa

2023-10-31 Thread Arkadiusz Kusztal
Added SM2 ECDSA feature to the Intel QuickAssist Technology symmetric crypto PMD. Signed-off-by: Arkadiusz Kusztal --- v2: - fixed build issues doc/guides/cryptodevs/features/qat.ini| 1 + doc/guides/cryptodevs/qat.rst | 1 + doc/guides/rel_notes/release_23_11.rst

[PATCH v2] common/qat: limit configuration to the primary process

2023-10-22 Thread Arkadiusz Kusztal
This change prevents certain configuration functions from being called by the secondary process. Signed-off-by: Arkadiusz Kusztal --- v2: - fixed incorrect function call - rephrased comments drivers/common/qat/qat_device.c | 115 +++- drivers/common/qat

[PATCH] crypto/qat: add sm2 ecdsa

2023-09-17 Thread Arkadiusz Kusztal
Added SM2 ECDSA feature to the Intel QuickAssist Technology symmetric crypto PMD. Signed-off-by: Arkadiusz Kusztal --- doc/guides/cryptodevs/features/qat.ini| 1 + doc/guides/cryptodevs/qat.rst | 1 + doc/guides/rel_notes/release_23_11.rst| 3 + .../common/qat

[PATCH 3/3] common/qat: decouple pmds from the common code

2023-09-17 Thread Arkadiusz Kusztal
Service specific functions were moved to services files. Signed-off-by: Arkadiusz Kusztal --- drivers/common/qat/dev/qat_dev_gen1.c| 1 + drivers/common/qat/dev/qat_dev_gen2.c| 1 + drivers/common/qat/dev/qat_dev_gen3.c| 2 + drivers/common/qat/dev/qat_dev_gen4.c

[PATCH 2/3] common/qat: move command line params to the device struct

2023-09-17 Thread Arkadiusz Kusztal
Command line parameters was moved to the device struct. Signed-off-by: Arkadiusz Kusztal --- drivers/common/qat/qat_device.c | 54 ++--- drivers/common/qat/qat_device.h | 35 drivers/compress/qat/qat_comp_pmd.c | 9

[PATCH 1/3] common/qat: limit configuration to the primary process

2023-09-17 Thread Arkadiusz Kusztal
This change prevents certain configuration functions from being called by the secondary process. Signed-off-by: Arkadiusz Kusztal --- drivers/common/qat/qat_device.c | 113 +++- drivers/common/qat/qat_device.h | 2 + 2 files changed, 66 insertions(+), 49

[RFC] cryptodev: clarify usage of the block ciphers

2023-08-11 Thread Arkadiusz Kusztal
Some of the API comments incorrectly limited the usage of symmetric crypto fields to block ciphers. Signed-off-by: Arkadiusz Kusztal --- lib/cryptodev/rte_crypto_sym.h | 20 ++-- 1 file changed, 6 insertions(+), 14 deletions(-) diff --git a/lib/cryptodev/rte_crypto_sym.h b/lib

[RFC] cryptodev: refactor sm2, add plain message flag

2023-08-11 Thread Arkadiusz Kusztal
DSA, ECDSA and SM2. Signed-off-by: Arkadiusz Kusztal --- lib/cryptodev/rte_crypto_asym.h | 116 +--- 1 file changed, 63 insertions(+), 53 deletions(-) diff --git a/lib/cryptodev/rte_crypto_asym.h b/lib/cryptodev/rte_crypto_asym.h index 8b5794fb7c..43bdb392c5 100644

[PATCH v4 3/3] app/test: add rsa none padding tests

2023-06-20 Thread Arkadiusz Kusztal
Added RSA NONE padding test cases. Signed-off-by: Arkadiusz Kusztal --- app/test/test_cryptodev_asym.c | 205 +++ app/test/test_cryptodev_rsa_test_vectors.h | 220 + 2 files changed, 425 insertions(+) diff --git a/app/test/test_cryptodev_asym.c b

[PATCH v4 2/3] app/test: add modexp and modinv functions

2023-06-20 Thread Arkadiusz Kusztal
Added modular exponentiation and modular inverse tests to the asymmetric crypto testsuite. Signed-off-by: Arkadiusz Kusztal --- app/test/test_cryptodev_asym.c | 152 +++-- app/test/test_cryptodev_mod_test_vectors.h | 123 + 2 files changed, 263

[PATCH v4 1/3] app/test: remove obsolete test function

2023-06-20 Thread Arkadiusz Kusztal
Removed function `one by one` as it was not enough scalable and robust. Signed-off-by: Arkadiusz Kusztal --- app/test/test_cryptodev_asym.c | 418 -- app/test/test_cryptodev_mod_test_vectors.h | 925 - app/test/test_cryptodev_rsa_test_vectors.h | 224

[PATCH v4 0/3] Replace obsolote test cases.

2023-06-20 Thread Arkadiusz Kusztal
the new functions. v2: - fixed build problem with non compile-time constant v3: - rebased - left old pwct tests intact v4: - fixed mailmap mismatch - rebased Arkadiusz Kusztal (3): app/test: remove obsolete test function app/test: add modexp and modinv functions app/test: add rsa none