#
bdce2564 |
| 04-Oct-2022 |
Akhil Goyal <gakhil@marvell.com> |
cryptodev: rework session framework
As per current design, rte_cryptodev_sym_session_create() and rte_cryptodev_sym_session_init() use separate mempool objects for a single session. And structure rt
cryptodev: rework session framework
As per current design, rte_cryptodev_sym_session_create() and rte_cryptodev_sym_session_init() use separate mempool objects for a single session. And structure rte_cryptodev_sym_session is not directly used by the application, it may cause ABI breakage if the structure is modified in future.
To address these two issues, the rte_cryptodev_sym_session_create will take one mempool object that the session and session private data are virtually/physically contiguous, and initializes both fields. The API rte_cryptodev_sym_session_init is removed.
rte_cryptodev_sym_session_create will now return an opaque session pointer which will be used by the app and other APIs.
In data path, opaque session pointer is attached to rte_crypto_op and the PMD can call an internal library API to get the session private data pointer based on the driver id.
Note: currently single session may be used by different device drivers, given it is initialized by them. After the change the session created by one device driver cannot be used or reinitialized by another driver.
Signed-off-by: Akhil Goyal <gakhil@marvell.com> Signed-off-by: Fan Zhang <roy.fan.zhang@intel.com> Signed-off-by: Ruifeng Wang <ruifeng.wang@arm.com> Acked-by: Kai Ji <kai.ji@intel.com> Tested-by: Gagandeep Singh <g.singh@nxp.com> Tested-by: David Coyle <david.coyle@intel.com> Tested-by: Kevin O'Sullivan <kevin.osullivan@intel.com>
show more ...
|
#
72b452c5 |
| 27-Aug-2022 |
Dmitry Kozlyuk <dmitry.kozliuk@gmail.com> |
eal: remove unneeded includes from a public header
Do not include <ctype.h>, <errno.h>, and <stdlib.h> from <rte_common.h>, because they are not used by this file. Include the needed headers directl
eal: remove unneeded includes from a public header
Do not include <ctype.h>, <errno.h>, and <stdlib.h> from <rte_common.h>, because they are not used by this file. Include the needed headers directly from the files that need them.
Signed-off-by: Dmitry Kozlyuk <dmitry.kozliuk@gmail.com> Acked-by: Bruce Richardson <bruce.richardson@intel.com>
show more ...
|
#
d5c24714 |
| 29-Jun-2022 |
Gowrishankar Muthukrishnan <gmuthukrishn@marvell.com> |
examples/fips_validation: add parsing for SHA
Added function to parse algorithm for SHA test.
Signed-off-by: Gowrishankar Muthukrishnan <gmuthukrishn@marvell.com> Acked-by: Fan Zhang <roy.fan.zhang
examples/fips_validation: add parsing for SHA
Added function to parse algorithm for SHA test.
Signed-off-by: Gowrishankar Muthukrishnan <gmuthukrishn@marvell.com> Acked-by: Fan Zhang <roy.fan.zhang@intel.com>
show more ...
|
#
f8e431ed |
| 29-Jun-2022 |
Gowrishankar Muthukrishnan <gmuthukrishn@marvell.com> |
examples/fips_validation: add parsing for AES-XTS
Added function to parse algorithm for AES XTS test.
Signed-off-by: Gowrishankar Muthukrishnan <gmuthukrishn@marvell.com> Acked-by: Fan Zhang <roy.f
examples/fips_validation: add parsing for AES-XTS
Added function to parse algorithm for AES XTS test.
Signed-off-by: Gowrishankar Muthukrishnan <gmuthukrishn@marvell.com> Acked-by: Fan Zhang <roy.fan.zhang@intel.com>
show more ...
|
#
75777166 |
| 29-Jun-2022 |
Gowrishankar Muthukrishnan <gmuthukrishn@marvell.com> |
examples/fips_validation: add AES-CBC in the enum
Add algorithm enum specifically for AES_CBC instead of relying on AES as such.
Fixes: 8b8546aaedf ("examples/fips_validation: add parsing for AES-C
examples/fips_validation: add AES-CBC in the enum
Add algorithm enum specifically for AES_CBC instead of relying on AES as such.
Fixes: 8b8546aaedf ("examples/fips_validation: add parsing for AES-CBC")
Signed-off-by: Gowrishankar Muthukrishnan <gmuthukrishn@marvell.com> Acked-by: Fan Zhang <roy.fan.zhang@intel.com>
show more ...
|
#
8d70a194 |
| 07-Jun-2022 |
David Marchand <david.marchand@redhat.com> |
examples/fips_validation: fix link to libjansson
When compiling this example out of DPDK, linking the executable fails with:
## Building fips_validation /usr/bin/ld: /tmp/ccQjeHBg.o: in functio
examples/fips_validation: fix link to libjansson
When compiling this example out of DPDK, linking the executable fails with:
## Building fips_validation /usr/bin/ld: /tmp/ccQjeHBg.o: in function `fips_test_init': fips_validation.c:(.text+0x7ab): undefined reference to `json_loadf' /usr/bin/ld: /tmp/ccQjeHBg.o: in function `fips_test_parse_one_json_vector_set': fips_validation.c:(.text+0xc2e): undefined reference to `json_object_get' /usr/bin/ld: fips_validation.c:(.text+0xc36): undefined reference to `json_string_value' /usr/bin/ld: /tmp/ccQjeHBg.o: in function `fips_test_parse_one_json_group': fips_validation.c:(.text+0xd00): undefined reference to `json_object_get' /usr/bin/ld: fips_validation.c:(.text+0xd14): undefined reference to `json_integer_value' ...
Code in an example can't rely on RTE_HAS_JANSSON, because it only indicates that the jansson library was available at the time of dpdk compilation.
Prefer a local build flag (like what is done in vm_power_manager). And add linking to libjansson, if available.
Fixes: f556293fd58e ("examples/fips_validation: add JSON info to header")
Signed-off-by: David Marchand <david.marchand@redhat.com> Acked-by: Gowrishankar Muthukrishnan <gmuthukrishn@marvell.com>
show more ...
|
#
8b8546aa |
| 30-May-2022 |
Gowrishankar Muthukrishnan <gmuthukrishn@marvell.com> |
examples/fips_validation: add parsing for AES-CBC
Added function to parse algorithm for AES_CBC test.
Signed-off-by: Gowrishankar Muthukrishnan <gmuthukrishn@marvell.com> Acked-by: Fan Zhang <roy.f
examples/fips_validation: add parsing for AES-CBC
Added function to parse algorithm for AES_CBC test.
Signed-off-by: Gowrishankar Muthukrishnan <gmuthukrishn@marvell.com> Acked-by: Fan Zhang <roy.fan.zhang@intel.com> Tested-by: Jakub Poczatek <jakub.poczatek@intel.com>
show more ...
|
#
07da56a6 |
| 30-May-2022 |
Brandon Lo <blo@iol.unh.edu> |
examples/fips_validation: add parsing for CMAC
Added function to parse algorithm for CMAC test.
Signed-off-by: Brandon Lo <blo@iol.unh.edu> Signed-off-by: Gowrishankar Muthukrishnan <gmuthukrishn@m
examples/fips_validation: add parsing for CMAC
Added function to parse algorithm for CMAC test.
Signed-off-by: Brandon Lo <blo@iol.unh.edu> Signed-off-by: Gowrishankar Muthukrishnan <gmuthukrishn@marvell.com> Acked-by: Fan Zhang <roy.fan.zhang@intel.com> Tested-by: Jakub Poczatek <jakub.poczatek@intel.com>
show more ...
|
#
443c93d8 |
| 30-May-2022 |
Brandon Lo <blo@iol.unh.edu> |
examples/fips_validation: add JSON for HMAC
Added JSON support for the HMAC algorithm.
Signed-off-by: Brandon Lo <blo@iol.unh.edu> Acked-by: Gowrishankar Muthukrishnan <gmuthukrishn@marvell.com> Ac
examples/fips_validation: add JSON for HMAC
Added JSON support for the HMAC algorithm.
Signed-off-by: Brandon Lo <blo@iol.unh.edu> Acked-by: Gowrishankar Muthukrishnan <gmuthukrishn@marvell.com> Acked-by: Fan Zhang <roy.fan.zhang@intel.com> Tested-by: Jakub Poczatek <jakub.poczatek@intel.com>
show more ...
|
#
b09aac2d |
| 30-May-2022 |
Brandon Lo <blo@iol.unh.edu> |
examples/fips_validation: add JSON to GCM test
Added JSON-specific testing and writeback functions which allows the user to test AES-GCM vector sets.
Signed-off-by: Brandon Lo <blo@iol.unh.edu> Ack
examples/fips_validation: add JSON to GCM test
Added JSON-specific testing and writeback functions which allows the user to test AES-GCM vector sets.
Signed-off-by: Brandon Lo <blo@iol.unh.edu> Acked-by: Gowrishankar Muthukrishnan <gmuthukrishn@marvell.com> Acked-by: Fan Zhang <roy.fan.zhang@intel.com> Tested-by: Jakub Poczatek <jakub.poczatek@intel.com>
show more ...
|
#
89be27e3 |
| 30-May-2022 |
Brandon Lo <blo@iol.unh.edu> |
examples/fips_validation: allow JSON file as input
Added the ability to use the JSON format as the input and output of the example application.
Signed-off-by: Brandon Lo <blo@iol.unh.edu> Signed-of
examples/fips_validation: allow JSON file as input
Added the ability to use the JSON format as the input and output of the example application.
Signed-off-by: Brandon Lo <blo@iol.unh.edu> Signed-off-by: Gowrishankar Muthukrishnan <gmuthukrishn@marvell.com> Acked-by: Fan Zhang <roy.fan.zhang@intel.com> Tested-by: Jakub Poczatek <jakub.poczatek@intel.com>
show more ...
|
#
58cc9880 |
| 30-May-2022 |
Brandon Lo <blo@iol.unh.edu> |
examples/fips_validation: add JSON parsing
Added functions to parse the required information from a vector set given in the new JSON format.
Signed-off-by: Brandon Lo <blo@iol.unh.edu> Signed-off-b
examples/fips_validation: add JSON parsing
Added functions to parse the required information from a vector set given in the new JSON format.
Signed-off-by: Brandon Lo <blo@iol.unh.edu> Signed-off-by: Gowrishankar Muthukrishnan <gmuthukrishn@marvell.com> Acked-by: Fan Zhang <roy.fan.zhang@intel.com> Tested-by: Jakub Poczatek <jakub.poczatek@intel.com>
show more ...
|
#
f556293f |
| 30-May-2022 |
Brandon Lo <blo@iol.unh.edu> |
examples/fips_validation: add JSON info to header
Added JSON-specific functions and other information needed to test the new FIPS test vectors.
Signed-off-by: Brandon Lo <blo@iol.unh.edu> Signed-of
examples/fips_validation: add JSON info to header
Added JSON-specific functions and other information needed to test the new FIPS test vectors.
Signed-off-by: Brandon Lo <blo@iol.unh.edu> Signed-off-by: Gowrishankar Muthukrishnan <gmuthukrishn@marvell.com> Acked-by: Fan Zhang <roy.fan.zhang@intel.com> Tested-by: Jakub Poczatek <jakub.poczatek@intel.com>
show more ...
|
#
06c047b6 |
| 09-Feb-2022 |
Stephen Hemminger <stephen@networkplumber.org> |
remove unnecessary null checks
Functions like free, rte_free, and rte_mempool_free already handle NULL pointer so the checks here are not necessary.
Remove redundant NULL pointer checks before free
remove unnecessary null checks
Functions like free, rte_free, and rte_mempool_free already handle NULL pointer so the checks here are not necessary.
Remove redundant NULL pointer checks before free functions found by nullfree.cocci
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org>
show more ...
|
#
3b2311cc |
| 28-Oct-2021 |
Fan Zhang <roy.fan.zhang@intel.com> |
examples/fips_validation: fix device start
This patch fixes the missing device start for fips validation sample app.
Bugzilla ID: 842 Fixes: 261bbff75e34 ("examples: use separate crypto session mem
examples/fips_validation: fix device start
This patch fixes the missing device start for fips validation sample app.
Bugzilla ID: 842 Fixes: 261bbff75e34 ("examples: use separate crypto session mempools") Cc: stable@dpdk.org
Signed-off-by: Fan Zhang <roy.fan.zhang@intel.com> Acked-by: Akhil Goyal <gakhil@marvell.com>
show more ...
|
#
15bb59a5 |
| 12-Aug-2021 |
Ciara Power <ciara.power@intel.com> |
examples/fips_validation: fix resetting pointer
The env.digest memory was freed, but the pointer was not set to NULL afterwards. This caused an "Invalid Memory" error, as the pointer tries to free t
examples/fips_validation: fix resetting pointer
The env.digest memory was freed, but the pointer was not set to NULL afterwards. This caused an "Invalid Memory" error, as the pointer tries to free twice.
Fixes: 952e10cdad5e ("examples/fips_validation: support scatter gather list") Cc: stable@dpdk.org
Signed-off-by: Ciara Power <ciara.power@intel.com> Acked-by: Fan Zhang <roy.fan.zhang@intel.com>
show more ...
|
#
25d392e1 |
| 12-Aug-2021 |
Ciara Power <ciara.power@intel.com> |
examples/fips_validation: remove unused allocation
The val.val pointer is allocated memory, however this memory is then freed in get_writeback_data() without being used beforehand. The pointer is th
examples/fips_validation: remove unused allocation
The val.val pointer is allocated memory, however this memory is then freed in get_writeback_data() without being used beforehand. The pointer is then allocated memory again before use, so the very first allocation is removed as it was unnecessary.
Fixes: f4797bae0050 ("examples/fips_validation: support plain SHA") Cc: stable@dpdk.org
Signed-off-by: Ciara Power <ciara.power@intel.com> Acked-by: Fan Zhang <roy.fan.zhang@intel.com>
show more ...
|
#
74645f64 |
| 10-Aug-2021 |
Akhil Goyal <gakhil@marvell.com> |
examples/fips_validation: remove illegal usage of API
Some of the cryptodev APIs are not allowed to be used by application directly. Hence removing the usage of 1. queue_pair_release: it is not requ
examples/fips_validation: remove illegal usage of API
Some of the cryptodev APIs are not allowed to be used by application directly. Hence removing the usage of 1. queue_pair_release: it is not required, as configure of queue pair release the previous queue pairs and the dev is not directly exposed to application, hence cannot use its ops from app. 2. rte_cryptodev_stop: it can be used directly without checking if the device is started or not. 3. rte_cryptodev_pmd_destroy: application should use rte_cryptodev_close instead.
Signed-off-by: Akhil Goyal <gakhil@marvell.com> Acked-by: Matan Azrad <matan@nvidia.com> Acked-by: Hemant Agrawal <hemant.agrawal@nxp.com>
show more ...
|
#
e74abd48 |
| 10-Aug-2021 |
Akhil Goyal <gakhil@marvell.com> |
cryptodev: rename function to check device validity
The API rte_cryptodev_pmd_is_valid_dev, can be used by the application as well as PMD to check whether the device is valid or not. Hence, _pmd is
cryptodev: rename function to check device validity
The API rte_cryptodev_pmd_is_valid_dev, can be used by the application as well as PMD to check whether the device is valid or not. Hence, _pmd is removed from the API. The applications and drivers which use this API are also updated.
Signed-off-by: Akhil Goyal <gakhil@marvell.com> Acked-by: Hemant Agrawal <hemant.agrawal@nxp.com>
show more ...
|
#
10aa3757 |
| 15-Apr-2021 |
Chengchang Tang <tangchengchang@huawei.com> |
examples: add eal cleanup to examples
According to the programming guide, the rte_eal_init should be used pairs with rte_eal_cleanup.
This patch add rte_eal_cleanup to examples to encourage new use
examples: add eal cleanup to examples
According to the programming guide, the rte_eal_init should be used pairs with rte_eal_cleanup.
This patch add rte_eal_cleanup to examples to encourage new users of DPDK to use it.
Fixes: aec9c13c5257 ("eal: add function to release internal resources") Fixes: 3d0fad56b74a ("examples/fips_validation: add crypto FIPS application") Fixes: c8e6ceecebc1 ("examples/ioat: add new sample app for ioat driver") Fixes: 4ff457986f76 ("examples/l2fwd-event: add default poll mode routines") Fixes: 08bd1a174461 ("examples/l3fwd-graph: add graph-based l3fwd skeleton") Fixes: c5eebf85badc ("examples/ntb: add example for NTB") Fixes: b77f66002812 ("examples/pipeline: add new example application") Fixes: edbed86d1cc3 ("examples/vdpa: introduce a new sample for vDPA") Fixes: c19beb3f38cd ("examples/vhost_blk: introduce vhost storage sample") Fixes: f5188211c721 ("examples/vhost_crypto: add sample application") Cc: stable@dpdk.org
Signed-off-by: Chengchang Tang <tangchengchang@huawei.com>
show more ...
|
#
fc6e6515 |
| 04-Feb-2021 |
Ibtisam Tariq <ibtisam.tariq@emumba.com> |
examples/fips_validation: enhance getopt_long usage
Instead of using getopt_long return value, strcmp was used to compare the input parameters with the struct option array. This patch get rid of all
examples/fips_validation: enhance getopt_long usage
Instead of using getopt_long return value, strcmp was used to compare the input parameters with the struct option array. This patch get rid of all those strcmp by directly binding each longopt with an int enum. This is to improve readability and consistency in all examples.
Bugzilla ID: 238
Reported-by: David Marchand <david.marchand@redhat.com> Signed-off-by: Ibtisam Tariq <ibtisam.tariq@emumba.com> Reviewed-by: David Marchand <david.marchand@redhat.com>
show more ...
|
#
601b8a54 |
| 22-Oct-2020 |
Fan Zhang <roy.fan.zhang@intel.com> |
fips_validation: fix GCM test
This patch fixes FIPS GCM test of the redundant plaintext string write and insufficient test case support check for some corner cases.
Fixes: d09abf2d1007 ("examples/f
fips_validation: fix GCM test
This patch fixes FIPS GCM test of the redundant plaintext string write and insufficient test case support check for some corner cases.
Fixes: d09abf2d1007 ("examples/fips_validation: update GCM test") Cc: stable@dpdk.org
Signed-off-by: Fan Zhang <roy.fan.zhang@intel.com>
show more ...
|
#
bda9ce3c |
| 30-Oct-2020 |
Ciara Power <ciara.power@intel.com> |
examples/fips_validation: fix leak on failure
The wb_data variable went out of scope on failure in the get_writeback_data function. This is now freed before returning -1.
Coverity issue: 363453 Fix
examples/fips_validation: fix leak on failure
The wb_data variable went out of scope on failure in the get_writeback_data function. This is now freed before returning -1.
Coverity issue: 363453 Fixes: 952e10cdad5e ("examples/fips_validation: support scatter gather list")
Signed-off-by: Ciara Power <ciara.power@intel.com> Reviewed-by: David Marchand <david.marchand@redhat.com>
show more ...
|
#
afda6b01 |
| 30-Oct-2020 |
Ciara Power <ciara.power@intel.com> |
examples/fips_validation: fix crash on allocation failure
The return value was not being checked when calling the get_writeback_data function in the AES test case. On failure, this led to a NULL der
examples/fips_validation: fix crash on allocation failure
The return value was not being checked when calling the get_writeback_data function in the AES test case. On failure, this led to a NULL dereference when using memcpy later. The return value is now checked to avoid this NULL dereference.
Coverity issue: 363463 Fixes: 952e10cdad5e ("examples/fips_validation: support scatter gather list")
Signed-off-by: Ciara Power <ciara.power@intel.com> Reviewed-by: David Marchand <david.marchand@redhat.com>
show more ...
|
#
d09abf2d |
| 09-Oct-2020 |
Fan Zhang <roy.fan.zhang@intel.com> |
examples/fips_validation: update GCM test
This patch updates fips validation GCM test capabilities:
- In NIST GCMVS spec GMAC test vectors are the GCM ones with plaintext length as 0 and uses AAD a
examples/fips_validation: update GCM test
This patch updates fips validation GCM test capabilities:
- In NIST GCMVS spec GMAC test vectors are the GCM ones with plaintext length as 0 and uses AAD as input data. Originally fips_validation tests treats them both as GCM test vectors. This patch introduce automatic test type recognition between the two: when plaintext length is 0 the prepare_gmac_xform and prepare_auth_op functions are called, otherwise prepare_gcm_xform and prepare_aead_op functions are called.
- NIST GCMVS also specified externally or internally IV generation. When IV is to be generated by IUT internally IUT shall store the generated IV in the response file. This patch also adds the support to that.
Signed-off-by: Fan Zhang <roy.fan.zhang@intel.com> Signed-off-by: Weqaar Janjua <weqaar.a.janjua@intel.com> Acked-by: John Griffin <john.griffin@intel.com>
show more ...
|