#
8484d74b |
| 10-Oct-2024 |
Brian Dooley <brian.dooley@intel.com> |
crypto/ipsec_mb: bump minimum IPsec MB version
AESNI_MB SW PMDs increment Intel IPsec MB version to 1.4. A minimum IPsec Multi-buffer version of 1.4 or greater is now required for the 24.11 LTS rele
crypto/ipsec_mb: bump minimum IPsec MB version
AESNI_MB SW PMDs increment Intel IPsec MB version to 1.4. A minimum IPsec Multi-buffer version of 1.4 or greater is now required for the 24.11 LTS release.
Signed-off-by: Brian Dooley <brian.dooley@intel.com> Acked-by: Kai Ji <kai.ji@intel.com> Acked-by: Pablo de Lara <pablo.de.lara.guarch@intel.com> Acked-by: Wathsala Vithanage <wathsala.vithanage@arm.com>
show more ...
|
#
74d88d04 |
| 18-Jun-2024 |
Stephen Hemminger <stephen@networkplumber.org> |
memzone: remove unnecessary null checks
The function rte_memzone_free() already checks if the argument is NULL. Add it to the coccinelle fix script and correct all the existing code.
Signed-off-by:
memzone: remove unnecessary null checks
The function rte_memzone_free() already checks if the argument is NULL. Add it to the coccinelle fix script and correct all the existing code.
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org> Reviewed-by: Tyler Retzlaff <roretzla@linux.microsoft.com> Acked-by: Morten Brørup <mb@smartsharesystems.com>
show more ...
|
#
ae282b06 |
| 17-Nov-2023 |
David Marchand <david.marchand@redhat.com> |
lib: remove redundant newline from logs
Fix places where two newline characters may be logged.
Cc: stable@dpdk.org
Signed-off-by: David Marchand <david.marchand@redhat.com> Acked-by: Stephen Hemmi
lib: remove redundant newline from logs
Fix places where two newline characters may be logged.
Cc: stable@dpdk.org
Signed-off-by: David Marchand <david.marchand@redhat.com> Acked-by: Stephen Hemminger <stephen@networkplumber.org> Reviewed-by: Chengwen Feng <fengchengwen@huawei.com> Acked-by: Mattias Rönnblom <mattias.ronnblom@ericsson.com>
show more ...
|
#
f59851e0 |
| 14-Aug-2023 |
Stephen Hemminger <stephen@networkplumber.org> |
crypto/ipsec_mb: use the existing dynamic logtype
There already is a logtype in this driver, use it!
Fixes: b35848bc01f6 ("crypto/ipsec_mb: add multi-process IPC request handler")
Signed-off-by: S
crypto/ipsec_mb: use the existing dynamic logtype
There already is a logtype in this driver, use it!
Fixes: b35848bc01f6 ("crypto/ipsec_mb: add multi-process IPC request handler")
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org> Acked-by: Morten Brørup <mb@smartsharesystems.com>
show more ...
|
#
db7dc907 |
| 17-May-2023 |
Ciara Power <ciara.power@intel.com> |
crypto/ipsec_mb: optimize allocation in session
When configuring the session, use the queue pair mb_mgr that was already allocated if possible. If this doesn't exist, then allocate a new mb_mgr.
Th
crypto/ipsec_mb: optimize allocation in session
When configuring the session, use the queue pair mb_mgr that was already allocated if possible. If this doesn't exist, then allocate a new mb_mgr.
This reduces unnecessary cycles creating an mb_mgr for every session configured.
Fixes: c75542ae4200 ("crypto/ipsec_mb: introduce IPsec_mb framework") Cc: stable@dpdk.org
Signed-off-by: Pablo de Lara <pablo.de.lara.guarch@intel.com> Signed-off-by: Ciara Power <ciara.power@intel.com> Acked-by: Kai Ji <kai.ji@intel.com>
show more ...
|
#
2245ccf7 |
| 13-Jan-2023 |
Stephen Hemminger <stephen@networkplumber.org> |
crypto/ipsec_mb: remove unnecessary null check
The function rte_ring_free() accepts NULL as valid input like free() and other functions.
Found with null_free_check.cocci.
Fixes: 16d6ebb65d59 ("cry
crypto/ipsec_mb: remove unnecessary null check
The function rte_ring_free() accepts NULL as valid input like free() and other functions.
Found with null_free_check.cocci.
Fixes: 16d6ebb65d59 ("crypto/ipsec_mb: fix null checks") Cc: stable@dpdk.org
Signed-off-by: Stephen Hemminger <stephen@networkplumber.org> Acked-by: Tyler Retzlaff <roretzla@linux.microsoft.com> Acked-by: Fan Zhang <fanzhang.oss@gmail.com> Acked-by: Kai Ji <kai.ji@intel.com>
show more ...
|
#
e0e095d3 |
| 04-Nov-2022 |
Ciara Power <ciara.power@intel.com> |
crypto/ipsec_mb: fix queue setup in secondary process
If a secondary process is using a queue pair that has been setup by the primary process, we need to reset mb_mgr pointers. This commit removes a
crypto/ipsec_mb: fix queue setup in secondary process
If a secondary process is using a queue pair that has been setup by the primary process, we need to reset mb_mgr pointers. This commit removes an error return in this case, allowing secondary to do the remaining setup for the existing qp.
Fixes: b35848bc01f6 ("crypto/ipsec_mb: add multi-process IPC request handler")
Signed-off-by: Ciara Power <ciara.power@intel.com> Acked-by: Kai Ji <kai.ji@intel.com>
show more ...
|
#
16d6ebb6 |
| 01-Nov-2022 |
Kai Ji <kai.ji@intel.com> |
crypto/ipsec_mb: fix null checks
This patch fix the NULL pointer check when dereference qp and ring lookup.
Coverity issue: 381625 Fixes: c75542ae4200 ("crypto/ipsec_mb: introduce IPsec_mb framewor
crypto/ipsec_mb: fix null checks
This patch fix the NULL pointer check when dereference qp and ring lookup.
Coverity issue: 381625 Fixes: c75542ae4200 ("crypto/ipsec_mb: introduce IPsec_mb framework") Cc: stable@dpdk.org
Signed-off-by: Kai Ji <kai.ji@intel.com> Acked-by: Ciara Power <ciara.power@intel.com>
show more ...
|
#
b35848bc |
| 26-Oct-2022 |
Kai Ji <kai.ji@intel.com> |
crypto/ipsec_mb: add multi-process IPC request handler
As the queue pair used in secondary process needs to be set up by the primary process, this patch adds an IPC register function to help seconda
crypto/ipsec_mb: add multi-process IPC request handler
As the queue pair used in secondary process needs to be set up by the primary process, this patch adds an IPC register function to help secondary process to send out queue-pair setup request to primary process via IPC request messages. A new "qp_in_used_pid" param stores the PID to provide the ownership of the queue-pair so that only the PID matched queue-pair can be free'd in the request.
Signed-off-by: Kai Ji <kai.ji@intel.com> Acked-by: Arek Kusztal <arkadiuszx.kusztal@intel.com> Acked-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
show more ...
|
#
2a440d6a |
| 04-Oct-2022 |
Akhil Goyal <gakhil@marvell.com> |
cryptodev: hide symmetric session structure
Structure rte_cryptodev_sym_session is moved to internal headers which are not visible to applications. The only field which should be used by app is opaq
cryptodev: hide symmetric session structure
Structure rte_cryptodev_sym_session is moved to internal headers which are not visible to applications. The only field which should be used by app is opaque_data. This field can now be accessed via set/get APIs added in this patch. Subsequent changes in app and lib are made to compile the code.
Signed-off-by: Akhil Goyal <gakhil@marvell.com> Signed-off-by: Fan Zhang <roy.fan.zhang@intel.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 ...
|
#
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 ...
|
#
f819a162 |
| 15-Feb-2022 |
Ciara Power <ciara.power@intel.com> |
crypto/ipsec_mb: remove useless check
The qp is never NULL when it reaches the qp_setup_cleanup error handling code. This is due to checks earlier in the function that return an error if qp is NULL.
crypto/ipsec_mb: remove useless check
The qp is never NULL when it reaches the qp_setup_cleanup error handling code. This is due to checks earlier in the function that return an error if qp is NULL.
Coverity issue: 375013 Fixes: 581c39b1cb7d ("crypto/ipsec_mb: fix queue cleanup null pointer dereference") Cc: stable@dpdk.org
Signed-off-by: Ciara Power <ciara.power@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 ...
|
#
581c39b1 |
| 10-Dec-2021 |
Ciara Power <ciara.power@intel.com> |
crypto/ipsec_mb: fix queue cleanup null pointer dereference
The qp was being used in the cleanup without checking if it was non NULL. A check is now added to verify qp is non NULL before use.
Cover
crypto/ipsec_mb: fix queue cleanup null pointer dereference
The qp was being used in the cleanup without checking if it was non NULL. A check is now added to verify qp is non NULL before use.
Coverity issue: 374375 Fixes: c75542ae4200 ("crypto/ipsec_mb: introduce IPsec_mb framework") Cc: stable@dpdk.org
Signed-off-by: Ciara Power <ciara.power@intel.com> Acked-by: Fan Zhang <roy.fan.zhang@intel.com>
show more ...
|
#
f51e40d1 |
| 10-Dec-2021 |
Ciara Power <ciara.power@intel.com> |
crypto/ipsec_mb: fix queue setup null pointer dereference
When setting up a qp in a secondary process, the local qp pointer is set to the stored device qp, configured by the primary process for that
crypto/ipsec_mb: fix queue setup null pointer dereference
When setting up a qp in a secondary process, the local qp pointer is set to the stored device qp, configured by the primary process for that device, but only if that device qp is not NULL. If the device qp was not set up correctly by the primary process and has a NULL value, the local qp variable stays at the default initialised value, NULL. This causes a NULL pointer dereference later in the function when using the qp value.
This is fixed by always setting the local qp to the value of the device qp stored, and then checking if qp is NULL, returning an error if it is.
Coverity issue: 374382 Fixes: 72a169278a56 ("crypto/ipsec_mb: support multi-process") Cc: stable@dpdk.org
Signed-off-by: Ciara Power <ciara.power@intel.com> Acked-by: Fan Zhang <roy.fan.zhang@intel.com>
show more ...
|
#
72a16927 |
| 15-Oct-2021 |
Ciara Power <ciara.power@intel.com> |
crypto/ipsec_mb: support multi-process
The ipsec_mb SW PMD now has multiprocess support. The queue-pair IMB_MGR is stored in a memzone instead of being allocated externally by the Intel IPSec MB lib
crypto/ipsec_mb: support multi-process
The ipsec_mb SW PMD now has multiprocess support. The queue-pair IMB_MGR is stored in a memzone instead of being allocated externally by the Intel IPSec MB library, when v1.1 is used. If v1.0 is used, multi process is not supported, and allocation is done as before. The secondary process needs to reconfigure the queue-pair to allow for IMB_MGR function pointers be updated.
Intel IPsec MB library version 1.1 is required for this support.
Signed-off-by: Ciara Power <ciara.power@intel.com> Acked-by: Ray Kinsella <mdr@ashroe.eu> Acked-by: Fan Zhang <roy.fan.zhang@intel.com> Acked-by: Akhil Goyal <gakhil@marvell.com>
show more ...
|
#
c75542ae |
| 15-Oct-2021 |
Fan Zhang <roy.fan.zhang@intel.com> |
crypto/ipsec_mb: introduce IPsec_mb framework
This patch introduces the new framework to share common code between the SW crypto PMDs that depend on the intel-ipsec-mb library. This change helps to
crypto/ipsec_mb: introduce IPsec_mb framework
This patch introduces the new framework to share common code between the SW crypto PMDs that depend on the intel-ipsec-mb library. This change helps to reduce future effort on the code maintenance and feature updates.
The PMDs that will be added to this framework in subsequent patches are: - AESNI MB - AESNI GCM - CHACHA20_POLY1305 - KASUMI - SNOW3G - ZUC
The use of these PMDs will not change, they will still be supported for x86, and will use the same EAL args as before.
The minimum required version for the intel-ipsec-mb library is now v1.0.
Signed-off-by: Fan Zhang <roy.fan.zhang@intel.com> Signed-off-by: Ciara Power <ciara.power@intel.com> Acked-by: Ray Kinsella <mdr@ashroe.eu> Acked-by: Akhil Goyal <gakhil@marvell.com>
show more ...
|