#
1af8b0b2 |
| 14-Dec-2023 |
David Marchand <david.marchand@redhat.com> |
drivers: split multilines log messages
Prepare for RTE_LOG_LINE conversion.
Signed-off-by: David Marchand <david.marchand@redhat.com>
|
#
f665790a |
| 13-Dec-2023 |
David Marchand <david.marchand@redhat.com> |
drivers: 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: Chengwen
drivers: 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: Chengwen Feng <fengchengwen@huawei.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 ...
|
#
1f37cb2b |
| 28-Jul-2022 |
David Marchand <david.marchand@redhat.com> |
bus/pci: make driver-only headers private
The pci bus interface is for drivers only. Mark as internal and move the header in the driver headers list.
While at it, cleanup the code: - fix indentatio
bus/pci: make driver-only headers private
The pci bus interface is for drivers only. Mark as internal and move the header in the driver headers list.
While at it, cleanup the code: - fix indentation, - remove unneeded reference to bus specific singleton object, - remove unneeded list head structure type, - reorder the definitions and macro manipulating the bus singleton object, - remove inclusion of rte_bus.h and fix the code that relied on implicit inclusion,
Signed-off-by: David Marchand <david.marchand@redhat.com> Acked-by: Bruce Richardson <bruce.richardson@intel.com> Acked-by: Ajit Khaparde <ajit.khaparde@broadcom.com> Acked-by: Rosen Xu <rosen.xu@intel.com>
show more ...
|
#
d54c72ec |
| 20-Oct-2021 |
Akhil Goyal <gakhil@marvell.com> |
drivers/crypto: invoke probing finish function
Invoke event_dev_probing_finish() function at the end of probing, this function sets the function pointers in the fp_ops flat array in case of secondar
drivers/crypto: invoke probing finish function
Invoke event_dev_probing_finish() function at the end of probing, this function sets the function pointers in the fp_ops flat array in case of secondary process. For primary process, fp_ops is updated in rte_cryptodev_start().
Signed-off-by: Akhil Goyal <gakhil@marvell.com> Acked-by: Konstantin Ananyev <konstantin.ananyev@intel.com> Acked-by: Fan Zhang <roy.fan.zhang@intel.com> Acked-by: Matan Azrad <matan@nvidia.com>
show more ...
|
#
af668035 |
| 10-Aug-2021 |
Akhil Goyal <gakhil@marvell.com> |
cryptodev: expose driver interface as internal
The rte_cryptodev_pmd.* files are for drivers only and should be private to DPDK, and not installed for app use.
Signed-off-by: Akhil Goyal <gakhil@ma
cryptodev: expose driver interface as internal
The rte_cryptodev_pmd.* files are for drivers only and should be private to DPDK, and not installed for app use.
Signed-off-by: Akhil Goyal <gakhil@marvell.com> Acked-by: Matan Azrad <matan@nvidia.com> Acked-by: Fan Zhang <roy.fan.zhang@intel.com> Acked-by: Hemant Agrawal <hemant.agrawal@nxp.com>
show more ...
|
#
eeded204 |
| 26-Apr-2021 |
David Marchand <david.marchand@redhat.com> |
log: register with standardized names
Let's try to enforce the convention where most drivers use a pmd. logtype with their class reflected in it, and libraries use a lib. logtype.
Introduce two new
log: register with standardized names
Let's try to enforce the convention where most drivers use a pmd. logtype with their class reflected in it, and libraries use a lib. logtype.
Introduce two new macros: - RTE_LOG_REGISTER_DEFAULT can be used when a single logtype is used in a component. It is associated to the default name provided by the build system, - RTE_LOG_REGISTER_SUFFIX can be used when multiple logtypes are used, and then the passed name is appended to the default name,
RTE_LOG_REGISTER is left untouched for existing external users and for components that do not comply with the convention.
There is a new Meson variable log_prefix to adapt the default name for baseband (pmd.bb.), bus (no pmd.) and mempool (no pmd.) classes.
Note: achieved with below commands + reverted change on net/bonding + edits on crypto/virtio, compress/mlx5, regex/mlx5
$ git grep -l RTE_LOG_REGISTER drivers/ | while read file; do pattern=${file##drivers/}; class=${pattern%%/*}; pattern=${pattern#$class/}; drv=${pattern%%/*}; case "$class" in baseband) pattern=pmd.bb.$drv;; bus) pattern=bus.$drv;; mempool) pattern=mempool.$drv;; *) pattern=pmd.$class.$drv;; esac sed -i -e 's/RTE_LOG_REGISTER(\(.*\), '$pattern',/RTE_LOG_REGISTER_DEFAULT(\1,/' $file; sed -i -e 's/RTE_LOG_REGISTER(\(.*\), '$pattern'\.\(.*\),/RTE_LOG_REGISTER_SUFFIX(\1, \2,/' $file; done
$ git grep -l RTE_LOG_REGISTER lib/ | while read file; do pattern=${file##lib/}; pattern=lib.${pattern%%/*}; sed -i -e 's/RTE_LOG_REGISTER(\(.*\), '$pattern',/RTE_LOG_REGISTER_DEFAULT(\1,/' $file; sed -i -e 's/RTE_LOG_REGISTER(\(.*\), '$pattern'\.\(.*\),/RTE_LOG_REGISTER_SUFFIX(\1, \2,/' $file; done
Signed-off-by: David Marchand <david.marchand@redhat.com> Signed-off-by: Thomas Monjalon <thomas@monjalon.net> Acked-by: Bruce Richardson <bruce.richardson@intel.com>
show more ...
|
#
72f82c43 |
| 14-Sep-2020 |
Thomas Monjalon <thomas@monjalon.net> |
mem: remove physical address aliases
Remove the deprecated unioned fields phys_addr from the structures rte_memseg and rte_memzone. They are replaced with the fields iova which are at the same offse
mem: remove physical address aliases
Remove the deprecated unioned fields phys_addr from the structures rte_memseg and rte_memzone. They are replaced with the fields iova which are at the same offsets.
Signed-off-by: Thomas Monjalon <thomas@monjalon.net> Acked-by: Andrew Rybchenko <arybchenko@solarflare.com> Acked-by: Anatoly Burakov <anatoly.burakov@intel.com> Acked-by: Hemant Agrawal <hemant.agrawal@nxp.com> Acked-by: Ray Kinsella <mdr@ashroe.eu>
show more ...
|
#
9c99878a |
| 01-Jul-2020 |
Jerin Jacob <jerinj@marvell.com> |
log: introduce logtype register macro
Introduce the RTE_LOG_REGISTER macro to avoid the code duplication in the logtype registration process.
It is a wrapper macro for declaring the logtype, regist
log: introduce logtype register macro
Introduce the RTE_LOG_REGISTER macro to avoid the code duplication in the logtype registration process.
It is a wrapper macro for declaring the logtype, registering it and setting its level in the constructor context.
Signed-off-by: Jerin Jacob <jerinj@marvell.com> Acked-by: Adam Dybkowski <adamx.dybkowski@intel.com> Acked-by: Sachin Saxena <sachin.saxena@nxp.com> Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
show more ...
|
#
b7aa3b5b |
| 15-May-2020 |
Jay Zhou <jianjay.zhou@huawei.com> |
crypto/virtio: enable OOP feature flag
Since it will check the feature mask before running out-of-place test cases and the virtio-crypto device supports OOP_LB_IN_LB_OUT mode.
Signed-off-by: Jay Zh
crypto/virtio: enable OOP feature flag
Since it will check the feature mask before running out-of-place test cases and the virtio-crypto device supports OOP_LB_IN_LB_OUT mode.
Signed-off-by: Jay Zhou <jianjay.zhou@huawei.com> Signed-off-by: Akhil Goyal <akhil.goyal@nxp.com>
show more ...
|
#
728aaeff |
| 06-Mar-2020 |
Artur Trybula <arturx.trybula@intel.com> |
cryptodev: remove unused operation for queue count
This commit removes unused function pointer (queue_pair_count) from struct rte_cryptodev_ops. Related functions removed as well.
Signed-off-by: Ar
cryptodev: remove unused operation for queue count
This commit removes unused function pointer (queue_pair_count) from struct rte_cryptodev_ops. Related functions removed as well.
Signed-off-by: Artur Trybula <arturx.trybula@intel.com> Reviewed-by: Ruifeng Wang <ruifeng.wang@arm.com> Acked-by: Fiona Trahe <fiona.trahe@intel.com> Acked-by: Anoob Joseph <anoobj@marvell.com>
show more ...
|
#
933f42ea |
| 04-Sep-2019 |
Xiao Wang <xiao.w.wang@intel.com> |
crypto/virtio: allocate private data by NUMA affinity
It's better to allocate device private data on the same NUMA node with device, rather than with the main thread. This helps avoid cross-NUMA acc
crypto/virtio: allocate private data by NUMA affinity
It's better to allocate device private data on the same NUMA node with device, rather than with the main thread. This helps avoid cross-NUMA access for worker thread.
Signed-off-by: Xiao Wang <xiao.w.wang@intel.com> Reviewed-by: Jay Zhou <jianjay.zhou@huawei.com>
show more ...
|
#
186b14d6 |
| 24-Jun-2019 |
Fan Zhang <roy.fan.zhang@intel.com> |
cryptodev: make xform key pointer constant
This patch changes the key pointer data types in cipher, auth, and aead xforms from "uint8_t *" to "const uint8_t *" for a more intuitive and safe sessionn
cryptodev: make xform key pointer constant
This patch changes the key pointer data types in cipher, auth, and aead xforms from "uint8_t *" to "const uint8_t *" for a more intuitive and safe sessionn creation.
Signed-off-by: Fan Zhang <roy.fan.zhang@intel.com> Acked-by: Arek Kusztal <arkadiuszx.kusztal@intel.com> Acked-by: Akhil Goyal <akhil.goyal@nxp.com> Acked-by: Liron Himi <lironh@marvell.com>
show more ...
|
#
725d2a7f |
| 10-Jan-2019 |
Fan Zhang <roy.fan.zhang@intel.com> |
cryptodev: change queue pair configure structure
This patch changes the cryptodev queue pair configure structure to enable two mempool passed into cryptodev PMD simutaneously.
Signed-off-by: Fan Zh
cryptodev: change queue pair configure structure
This patch changes the cryptodev queue pair configure structure to enable two mempool passed into cryptodev PMD simutaneously.
Signed-off-by: Fan Zhang <roy.fan.zhang@intel.com> Acked-by: Fiona Trahe <fiona.trahe@intel.com> Acked-by: Pablo de Lara <pablo.de.lara.guarch@intel.com> Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
show more ...
|
#
4487cfa1 |
| 19-Jul-2018 |
Pablo de Lara <pablo.de.lara.guarch@intel.com> |
crypto/virtio: fix memory leak
Put session private data back to mempool when clearing a crypto session, which is expected to be done in the PMD.
Fixes: b7fa78c7d3b0 ("crypto/virtio: support session
crypto/virtio: fix memory leak
Put session private data back to mempool when clearing a crypto session, which is expected to be done in the PMD.
Fixes: b7fa78c7d3b0 ("crypto/virtio: support session related ops") Cc: stable@dpdk.org
Signed-off-by: Pablo de Lara <pablo.de.lara.guarch@intel.com> Reviewed-by: Jay Zhou <jianjay.zhou@huawei.com>
show more ...
|
#
f8e99896 |
| 18-Jun-2018 |
Thomas Monjalon <thomas@monjalon.net> |
remove useless constructor headers
A constructor is usually declared with RTE_INIT* macros. As it is a static function, no need to declare before its definition. The macro is used directly in the fu
remove useless constructor headers
A constructor is usually declared with RTE_INIT* macros. As it is a static function, no need to declare before its definition. The macro is used directly in the function definition.
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
show more ...
|
#
012c5076 |
| 05-Jul-2018 |
Pablo de Lara <pablo.de.lara.guarch@intel.com> |
cryptodev: rename PMD symmetric session API
The PMD specific API to configure, clear and obtain session private size is renamed, including the word _sym_ to clarify that it is API for symmetric sess
cryptodev: rename PMD symmetric session API
The PMD specific API to configure, clear and obtain session private size is renamed, including the word _sym_ to clarify that it is API for symmetric sessions, so there will not be any conflicts for asymmetric and other type of sessions in the future.
Signed-off-by: Pablo de Lara <pablo.de.lara.guarch@intel.com> Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
show more ...
|
#
9843546b |
| 05-Jul-2018 |
Pablo de Lara <pablo.de.lara.guarch@intel.com> |
cryptodev: remove attach/detach session API
As announced in the previous release, The API to attach/dettach a session to a queue pair is removed, as it was only used in DPAA, and it is not actually
cryptodev: remove attach/detach session API
As announced in the previous release, The API to attach/dettach a session to a queue pair is removed, as it was only used in DPAA, and it is not actually needed.
Signed-off-by: Pablo de Lara <pablo.de.lara.guarch@intel.com> Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
show more ...
|
#
62303e43 |
| 05-Jul-2018 |
Pablo de Lara <pablo.de.lara.guarch@intel.com> |
cryptodev: remove queue start/stop functions
Removed cryptodev queue start/stop functions, as they were marked deprecated in 18.05, since they were not implemented by any driver.
Signed-off-by: Pab
cryptodev: remove queue start/stop functions
Removed cryptodev queue start/stop functions, as they were marked deprecated in 18.05, since they were not implemented by any driver.
Signed-off-by: Pablo de Lara <pablo.de.lara.guarch@intel.com> Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
show more ...
|
#
e1fc5b76 |
| 05-Jul-2018 |
Pablo de Lara <pablo.de.lara.guarch@intel.com> |
cryptodev: remove max number of sessions parameter
Most crypto PMDs do not have a limitation of the number of the sessions that can be handled internally. The value that was set before was not actua
cryptodev: remove max number of sessions parameter
Most crypto PMDs do not have a limitation of the number of the sessions that can be handled internally. The value that was set before was not actually used at all, since the sessions are created at the application level. Therefore, this value is not parsed from the initial crypto parameters anymore and it is set to 0, meaning that there is no actual limit.
Signed-off-by: Pablo de Lara <pablo.de.lara.guarch@intel.com> Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
show more ...
|
#
a4493be5 |
| 05-Jul-2018 |
Pablo de Lara <pablo.de.lara.guarch@intel.com> |
cryptodev: replace bus specific struct with generic dev
Structure rte_cryptodev_info has currently PCI device information ("struct rte_pci_device") in it.
This information is not generic to all dev
cryptodev: replace bus specific struct with generic dev
Structure rte_cryptodev_info has currently PCI device information ("struct rte_pci_device") in it.
This information is not generic to all devices, so this gets replaced with the generic "rte_device" structure, compatible with all crypto devices.
Signed-off-by: Pablo de Lara <pablo.de.lara.guarch@intel.com> Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
show more ...
|
#
b063e843 |
| 26-Jun-2018 |
Fan Zhang <roy.fan.zhang@intel.com> |
crypto/virtio: fix IV physical address
The physical address of IV required by Virtio was computed using crypto operations' physical address plus the offset. However not all crypto ops will have phys
crypto/virtio: fix IV physical address
The physical address of IV required by Virtio was computed using crypto operations' physical address plus the offset. However not all crypto ops will have physical address field initialized and compute it runtimely is costly. This patch fixes this problem by adding iv field in virtio_crypto_op_cookie and does a memcpy of iv instead.
Fixes: 82adb12a1fce ("crypto/virtio: support burst enqueue/dequeue") Cc: stable@dpdk.org
Signed-off-by: Fan Zhang <roy.fan.zhang@intel.com> Reviewed-by: Jay Zhou <jianjay.zhou@huawei.com>
show more ...
|
#
8144eada |
| 17-Apr-2018 |
Jay Zhou <jianjay.zhou@huawei.com> |
crypto/virtio: support HMAC-SHA1
The AES-CBC with HMAC-SHA1 has been supported now.
Signed-off-by: Jay Zhou <jianjay.zhou@huawei.com> Reviewed-by: Fan Zhang <roy.fan.zhang@intel.com>
|
#
5889e1ff |
| 17-Apr-2018 |
Jay Zhou <jianjay.zhou@huawei.com> |
crypto/virtio: support AES-CBC
The AES-CBC cipher only algorithm has been supported now.
Signed-off-by: Jay Zhou <jianjay.zhou@huawei.com> Reviewed-by: Fan Zhang <roy.fan.zhang@intel.com>
|