#
e2af4e40 |
| 19-Sep-2023 |
David Coyle <david.coyle@intel.com> |
crypto/scheduler: support DOCSIS security protocol
Add support to the cryptodev scheduler PMD for the DOCSIS security protocol. This includes adding the following to the scheduler: - synchronization
crypto/scheduler: support DOCSIS security protocol
Add support to the cryptodev scheduler PMD for the DOCSIS security protocol. This includes adding the following to the scheduler: - synchronization of worker's security capabilities - retrieval of the scheduler's synchronized security capabilities - retrieval of the security session size i.e. maximum session size across all workers - creation of security sessions on each worker - deletion of security sessions on each worker
Signed-off-by: David Coyle <david.coyle@intel.com> Signed-off-by: Kevin O'Sullivan <kevin.osullivan@intel.com> Acked-by: Ciara Power <ciara.power@intel.com> Acked-by: Anoob Joseph <anoobj@marvell.com>
show more ...
|
#
8f1d23ec |
| 23-Aug-2022 |
David Marchand <david.marchand@redhat.com> |
eal: deprecate RTE_FUNC_PTR_* macros
Those macros have no real value and are easily replaced with a simple if() block.
Existing users have been converted using a new cocci script. Deprecate them.
eal: deprecate RTE_FUNC_PTR_* macros
Those macros have no real value and are easily replaced with a simple if() block.
Existing users have been converted using a new cocci script. Deprecate them.
Signed-off-by: David Marchand <david.marchand@redhat.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 ...
|
#
85b00824 |
| 28-Sep-2020 |
Adam Dybkowski <adamx.dybkowski@intel.com> |
crypto/scheduler: rename slave to worker
This patch replaces the usage of the word 'slave' with more appropriate word 'worker' in QAT PMD and Scheduler PMD as well as in their docs. Also the test ap
crypto/scheduler: rename slave to worker
This patch replaces the usage of the word 'slave' with more appropriate word 'worker' in QAT PMD and Scheduler PMD as well as in their docs. Also the test app was modified to use the new wording.
The Scheduler PMD's public API was modified according to the previous deprecation notice: rte_cryptodev_scheduler_slave_attach is now called rte_cryptodev_scheduler_worker_attach, rte_cryptodev_scheduler_slave_detach is rte_cryptodev_scheduler_worker_detach, rte_cryptodev_scheduler_slaves_get is rte_cryptodev_scheduler_workers_get.
Also, the configuration value RTE_CRYPTODEV_SCHEDULER_MAX_NB_SLAVES was renamed to RTE_CRYPTODEV_SCHEDULER_MAX_NB_WORKERS.
Signed-off-by: Adam Dybkowski <adamx.dybkowski@intel.com> Acked-by: Fan Zhang <roy.fan.zhang@intel.com> Reviewed-by: Ruifeng Wang <ruifeng.wang@arm.com> Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
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 ...
|
#
6723c0fc |
| 03-Apr-2019 |
Bruce Richardson <bruce.richardson@intel.com> |
replace snprintf with strlcpy
Do a global replace of snprintf(..."%s",...) with strlcpy, adding in the rte_string_fns.h header if needed. The function changes in this patch were auto-generated via
replace snprintf with strlcpy
Do a global replace of snprintf(..."%s",...) with strlcpy, adding in the rte_string_fns.h header if needed. The function changes in this patch were auto-generated via command:
spatch --sp-file devtools/cocci/strlcpy.cocci --dir . --in-place
and then the files edited using awk to add in the missing header:
gawk -i inplace '/include <rte_/ && ! seen { \ print "#include <rte_string_fns.h>"; seen=1} {print}'
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
show more ...
|
#
520dd992 |
| 28-Oct-2018 |
Ferruh Yigit <ferruh.yigit@intel.com> |
drivers: prefix global variables with module name
Some global variables are defined with generic names, add component name as prefix to variables to prevent collusion with application variables.
Si
drivers: prefix global variables with module name
Some global variables are defined with generic names, add component name as prefix to variables to prevent collusion with application variables.
Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com> Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com> Acked-by: Shreyansh Jain <shreyansh.jain@nxp.com> Acked-by: Tianfei Zhang <tianfei.zhang@intel.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 ...
|
#
85aa6d34 |
| 29-Jun-2018 |
Hari Kumar <hari.kumarx.vemula@intel.com> |
crypto/scheduler: add dynamic logging
Registered new dynamic logtype for driver and replaced CS_LOG_ERR and RTE_LOG macros with new CR_SCHED macro, which uses the new logtype.
Signed-off-by: Hari K
crypto/scheduler: add dynamic logging
Registered new dynamic logtype for driver and replaced CS_LOG_ERR and RTE_LOG macros with new CR_SCHED macro, which uses the new logtype.
Signed-off-by: Hari Kumar <hari.kumarx.vemula@intel.com> Reviewed-by: Reshma Pattan <reshma.pattan@intel.com> Reviewed-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
show more ...
|
#
06f0a569 |
| 26-Apr-2018 |
Pablo de Lara <pablo.de.lara.guarch@intel.com> |
crypto/scheduler: set null pointer after freeing
When freeing memory, pointers should be set to NULL, to avoid memory corruption/segmentation faults.
Fixes: 31439ee72b2c ("crypto/scheduler: add API
crypto/scheduler: set null pointer after freeing
When freeing memory, pointers should be set to NULL, to avoid memory corruption/segmentation faults.
Fixes: 31439ee72b2c ("crypto/scheduler: add API implementations") Fixes: 50e14527b9d1 ("crypto/scheduler: improve parameters parsing") Fixes: 57523e682bb7 ("crypto/scheduler: register operation functions") Fixes: a783aa634410 ("crypto/scheduler: add packet size based mode") Fixes: 4c07e0552f0a ("crypto/scheduler: add multicore scheduling mode") Cc: stable@dpdk.org
Signed-off-by: Pablo de Lara <pablo.de.lara.guarch@intel.com> Acked-by: Fan Zhang <roy.fan.zhang@intel.com>
show more ...
|
#
6af3b035 |
| 29-Jan-2018 |
Pablo de Lara <pablo.de.lara.guarch@intel.com> |
crypto/scheduler: fix strncpy
The coverity issue was not completely fixed, since strncpy should not be called with max length. Instead, snprintf is used as a safer option.
Coverity issue: 143431 Fi
crypto/scheduler: fix strncpy
The coverity issue was not completely fixed, since strncpy should not be called with max length. Instead, snprintf is used as a safer option.
Coverity issue: 143431 Fixes: d040aca67170 ("crypto/scheduler: fix strings not null terminated") Cc: stable@dpdk.org
Signed-off-by: Pablo de Lara <pablo.de.lara.guarch@intel.com> Acked-by: Fan Zhang <roy.fan.zhang@intel.com>
show more ...
|
#
5566a3e3 |
| 19-Dec-2017 |
Bruce Richardson <bruce.richardson@intel.com> |
drivers: use SPDX tag for Intel copyright files
Replace the BSD license header with the SPDX tag for files with only an Intel copyright on them.
Signed-off-by: Bruce Richardson <bruce.richardson@in
drivers: use SPDX tag for Intel copyright files
Replace the BSD license header with the SPDX tag for files with only an Intel copyright on them.
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
show more ...
|
#
d040aca6 |
| 18-Jul-2017 |
Pablo de Lara <pablo.de.lara.guarch@intel.com> |
crypto/scheduler: fix strings not null terminated
Coverity issue: 143431 Fixes: 31439ee72b2c ("crypto/scheduler: add API implementations") Cc: stable@dpdk.org
Signed-off-by: Pablo de Lara <pablo.de
crypto/scheduler: fix strings not null terminated
Coverity issue: 143431 Fixes: 31439ee72b2c ("crypto/scheduler: add API implementations") Cc: stable@dpdk.org
Signed-off-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
show more ...
|
#
4c07e055 |
| 05-Jul-2017 |
Kirill Rybalchenko <kirill.rybalchenko@intel.com> |
crypto/scheduler: add multicore scheduling mode
Multi-core scheduling mode is a mode where scheduler distributes crypto operations in a round-robin base, between several core assigned as workers.
S
crypto/scheduler: add multicore scheduling mode
Multi-core scheduling mode is a mode where scheduler distributes crypto operations in a round-robin base, between several core assigned as workers.
Signed-off-by: Kirill Rybalchenko <kirill.rybalchenko@intel.com> Acked-by: Fan Zhang <roy.fan.zhang@intel.com>
show more ...
|
#
7a364fae |
| 30-Jun-2017 |
Slawomir Mrozowicz <slawomirx.mrozowicz@intel.com> |
cryptodev: remove crypto device type enumeration
Changes device type identification to be based on a unique driver id replacing the current device type enumeration, which needed library changes ever
cryptodev: remove crypto device type enumeration
Changes device type identification to be based on a unique driver id replacing the current device type enumeration, which needed library changes every time a new crypto driver was added.
The driver id is assigned dynamically during driver registration using the new macro RTE_PMD_REGISTER_CRYPTO_DRIVER which returns a unique uint8_t identifier for that driver. New APIs are also introduced to allow retrieval of the driver id using the driver name.
Signed-off-by: Slawomir Mrozowicz <slawomirx.mrozowicz@intel.com> Signed-off-by: Pablo de Lara <pablo.de.lara.guarch@intel.com> Acked-by: Declan Doherty <declan.doherty@intel.com>
show more ...
|
#
bbe569da |
| 25-May-2017 |
Fan Zhang <roy.fan.zhang@intel.com> |
crypto/scheduler: remove deprecated functions
This patch remove the deprecated functions as well as notice for scheduler mode set/get API changes.
Signed-off-by: Fan Zhang <roy.fan.zhang@intel.com>
crypto/scheduler: remove deprecated functions
This patch remove the deprecated functions as well as notice for scheduler mode set/get API changes.
Signed-off-by: Fan Zhang <roy.fan.zhang@intel.com> Acked-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
show more ...
|
#
4e30ead5 |
| 05-Apr-2017 |
Fan Zhang <roy.fan.zhang@intel.com> |
crypto/scheduler: support mode specific option
Some scheduling modes may need extra options to be configured, this patch adds the function prototype for setting/getting options.
Signed-off-by: Fan
crypto/scheduler: support mode specific option
Some scheduling modes may need extra options to be configured, this patch adds the function prototype for setting/getting options.
Signed-off-by: Fan Zhang <roy.fan.zhang@intel.com> Acked-by: Declan Doherty <declan.doherty@intel.com>
show more ...
|
#
7b46f62b |
| 10-Apr-2017 |
Fan Zhang <roy.fan.zhang@intel.com> |
crypto/scheduler: fix capability update
Fixes: 31439ee72b2c ("crypto/scheduler: add API implementations") Cc: stable@dpdk.org
Signed-off-by: Fan Zhang <roy.fan.zhang@intel.com>
|
#
3fb45fdb |
| 05-Apr-2017 |
Fan Zhang <roy.fan.zhang@intel.com> |
crypto/scheduler: deprecate get/set mode functions
This patch deprecates the following functions in 17.05, which will be removed in 17.08. - rte_crpytodev_scheduler_mode_get() - rte_crpytodev_schedu
crypto/scheduler: deprecate get/set mode functions
This patch deprecates the following functions in 17.05, which will be removed in 17.08. - rte_crpytodev_scheduler_mode_get() - rte_crpytodev_scheduler_mode_set()
These two new functions replace them, fixing the typo in their names. - rte_cryptodev_scheduler_mode_get() - rte_cryptodev_scheduler_mode_set()
Signed-off-by: Fan Zhang <roy.fan.zhang@intel.com> Acked-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
show more ...
|
#
029bb907 |
| 30-Mar-2017 |
Fan Zhang <roy.fan.zhang@intel.com> |
crypto/scheduler: add API to get attached slaves
This patch adds an API to get the run-time slaves number and list of a cryptodev scheduler PMD.
Signed-off-by: Fan Zhang <roy.fan.zhang@intel.com> A
crypto/scheduler: add API to get attached slaves
This patch adds an API to get the run-time slaves number and list of a cryptodev scheduler PMD.
Signed-off-by: Fan Zhang <roy.fan.zhang@intel.com> Acked-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
show more ...
|
#
37f075da |
| 29-Mar-2017 |
Fan Zhang <roy.fan.zhang@intel.com> |
crypto/scheduler: add fail-over scheduling mode
Fail-over mode works with 2 slaves, primary slave and secondary slave. In this mode, the scheduler will enqueue the incoming crypto op burst to the pr
crypto/scheduler: add fail-over scheduling mode
Fail-over mode works with 2 slaves, primary slave and secondary slave. In this mode, the scheduler will enqueue the incoming crypto op burst to the primary slave. When one or more crypto ops are failed to be enqueued, they then will be enqueued to the secondary slave.
Signed-off-by: Fan Zhang <roy.fan.zhang@intel.com> Acked-by: Declan Doherty <declan.doherty@intel.com>
show more ...
|
#
a783aa63 |
| 30-Mar-2017 |
Fan Zhang <roy.fan.zhang@intel.com> |
crypto/scheduler: add packet size based mode
Packet-size based distribution mode is a scheduling mode works with 2 slaves, primary slave and secondary slave, and distribute the enqueued crypto ops t
crypto/scheduler: add packet size based mode
Packet-size based distribution mode is a scheduling mode works with 2 slaves, primary slave and secondary slave, and distribute the enqueued crypto ops to them based on their data lengths. A crypto op will be distributed to the primary slave if its data length equals or bigger than the designated threshold, otherwise it will be handled by the secondary slave.
Signed-off-by: Fan Zhang <roy.fan.zhang@intel.com> Acked-by: Declan Doherty <declan.doherty@intel.com>
show more ...
|
#
b88161be |
| 28-Mar-2017 |
Bruce Richardson <bruce.richardson@intel.com> |
crypto/scheduler: fix include of local headers
When a C file for a library/driver is including the public header files for that library, those need to be included as local includes using quotes rath
crypto/scheduler: fix include of local headers
When a C file for a library/driver is including the public header files for that library, those need to be included as local includes using quotes rather than angle-brackets. Without doing so, parallel builds can fail, as the compiler will only look for those headers in the global include folder rather than locally, and the build system does not enforce that the headers for a lib are installed before the rest of the lib is compiled.
Fixes: 097ab0bac017 ("crypto/scheduler: add API") Fixes: 503e9c5afb38 ("crypto/scheduler: register as vdev driver") Fixes: 31439ee72b2c ("crypto/scheduler: add API implementations") Cc: stable@dpdk.org
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
show more ...
|
#
100e4f7e |
| 24-Jan-2017 |
Fan Zhang <roy.fan.zhang@intel.com> |
crypto/scheduler: add round-robin mode
Implements round-robin scheduling mode and register into cryptodev scheduler ops structure. This mode enqueues a burst of operation to one of its slaves, and i
crypto/scheduler: add round-robin mode
Implements round-robin scheduling mode and register into cryptodev scheduler ops structure. This mode enqueues a burst of operation to one of its slaves, and iterates the next burst to the other slave. Same procedure is done on dequeueing operations.
Signed-off-by: Fan Zhang <roy.fan.zhang@intel.com> Signed-off-by: Declan Doherty <declan.doherty@intel.com> Acked-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
show more ...
|