|
Revision tags: v24.07-rc2, v24.07-rc1, v24.03, v24.03-rc4, v24.03-rc3, v24.03-rc2, v24.03-rc1, v23.11, v23.11-rc4, v23.11-rc3, v23.11-rc2, v23.11-rc1, v23.07, v23.07-rc4, v23.07-rc3, v23.07-rc2, v23.07-rc1, v23.03, v23.03-rc4, v23.03-rc3, v23.03-rc2 |
|
| #
365ec3c4 |
| 10-Mar-2023 |
David Marchand <david.marchand@redhat.com> |
raw/skeleton: fix selftest
ASan reported issues in this driver.
rte_rawdev_obj_t context object points at a uint16_t. skeleton_rawdev_enqueue_bufs() and skeleton_rawdev_dequeue_bufs() were incorrec
raw/skeleton: fix selftest
ASan reported issues in this driver.
rte_rawdev_obj_t context object points at a uint16_t. skeleton_rawdev_enqueue_bufs() and skeleton_rawdev_dequeue_bufs() were incorrectly casting to an int.
The enqueue/dequeue selftest had a leak on the enqueued string and was wrong in passing a rte_rawdev_buf pointer array. Fix this by allocating buffers on the stack and check that returned string is the expected one.
Bugzilla ID: 999 Fixes: 61c592a8d035 ("raw/skeleton: introduce skeleton rawdev driver") Fixes: 55ca1b0f2151 ("raw/skeleton: add test cases") Cc: stable@dpdk.org
Signed-off-by: David Marchand <david.marchand@redhat.com> Tested-by: Yu Jiang <yux.jiang@intel.com> Acked-by: Hemant Agrawal <hemant.agrawal@nxp.com>
show more ...
|
| #
11da6149 |
| 02-Mar-2023 |
Chengwen Feng <fengchengwen@huawei.com> |
raw/skeleton: fix empty devargs parsing
The rte_kvargs_process() was used to parse KV pairs, it also supports to parse 'only keys' (e.g. socket_id) type. And the callback function parameter 'value'
raw/skeleton: fix empty devargs parsing
The rte_kvargs_process() was used to parse KV pairs, it also supports to parse 'only keys' (e.g. socket_id) type. And the callback function parameter 'value' is NULL when parsed 'only keys'.
This patch fixes segment fault when parse input args with 'only keys' (e.g. self_test).
Fixes: 55ca1b0f2151 ("raw/skeleton: add test cases") Cc: stable@dpdk.org
Signed-off-by: Chengwen Feng <fengchengwen@huawei.com>
show more ...
|
|
Revision tags: v23.03-rc1, v22.11, v22.11-rc4, v22.11-rc3, v22.11-rc2, v22.11-rc1 |
|
| #
1a852c1e |
| 04-Oct-2022 |
David Marchand <david.marchand@redhat.com> |
raw/skeleton: remove useless check
As reported by Coverity, this check is pointless since dev is already dereferenced earlier. Besides, dev is passed by the rawdev layer and can't be NULL.
Note: th
raw/skeleton: remove useless check
As reported by Coverity, this check is pointless since dev is already dereferenced earlier. Besides, dev is passed by the rawdev layer and can't be NULL.
Note: the issue was probably present before the incriminated commit. It is unclear why Coverity would start complaining about this now.
Coverity issue: 380991 Fixes: 8f1d23ece06a ("eal: deprecate RTE_FUNC_PTR_* macros")
Signed-off-by: David Marchand <david.marchand@redhat.com> Acked-by: Hemant Agrawal <hemant.agrawal@nxp.com>
show more ...
|
| #
1acb7f54 |
| 28-Jul-2022 |
David Marchand <david.marchand@redhat.com> |
dev: hide driver object
Make rte_driver opaque for non internal users. This will make extending this object possible without breaking the ABI.
Introduce a new driver header and move rte_driver defi
dev: hide driver object
Make rte_driver opaque for non internal users. This will make extending this object possible without breaking the ABI.
Introduce a new driver header and move rte_driver definition. Update drivers and library to use the internal header.
Some applications may have been dereferencing rte_driver objects, mark this object's accessors as stable.
Signed-off-by: David Marchand <david.marchand@redhat.com> Acked-by: Bruce Richardson <bruce.richardson@intel.com> Acked-by: Jay Jayatheerthan <jay.jayatheerthan@intel.com> Acked-by: Ajit Khaparde <ajit.khaparde@broadcom.com> Acked-by: Akhil Goyal <gakhil@marvell.com> Acked-by: Abhinandan Gujjar <abhinandan.gujjar@intel.com>
show more ...
|
| #
4851ef2b |
| 28-Jul-2022 |
David Marchand <david.marchand@redhat.com> |
bus/vdev: make driver-only headers private
The vdev 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 indentat
bus/vdev: make driver-only headers private
The vdev 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: Rosen Xu <rosen.xu@intel.com> Reviewed-by: Ruifeng Wang <ruifeng.wang@arm.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 ...
|
| #
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 ...
|
|
Revision tags: v22.07, v22.07-rc4, v22.07-rc3, v22.07-rc2, v22.07-rc1, v22.03, v22.03-rc4, v22.03-rc3, v22.03-rc2, v22.03-rc1, v21.11, v21.11-rc4, v21.11-rc3, v21.11-rc2, v21.11-rc1, v21.08, v21.08-rc4, v21.08-rc3, v21.08-rc2, v21.08-rc1, v21.05, v21.05-rc4, v21.05-rc3, v21.05-rc2 |
|
| #
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 ...
|
|
Revision tags: v21.05-rc1 |
|
| #
b1641987 |
| 06-Apr-2021 |
Thomas Monjalon <thomas@monjalon.net> |
drivers: align log names
The log levels are configured by using the name of the logs. Some drivers are aligned to follow a common log name standard: pmd.class.driver[.sub] Some "common" drivers ski
drivers: align log names
The log levels are configured by using the name of the logs. Some drivers are aligned to follow a common log name standard: pmd.class.driver[.sub] Some "common" drivers skip the "class" part: pmd.driver.sub
Signed-off-by: Thomas Monjalon <thomas@monjalon.net> Acked-by: Bruce Richardson <bruce.richardson@intel.com> Acked-by: Rosen Xu <rosen.xu@intel.com> Acked-by: Xiao Wang <xiao.w.wang@intel.com> Acked-by: Hemant Agrawal <hemant.agrawal@nxp.com> Acked-by: Ajit Khaparde <ajit.khaparde@broadcom.com> Acked-by: Min Hu (Connor) <humin29@huawei.com>
show more ...
|
|
Revision tags: v21.02, v21.02-rc4, v21.02-rc3, v21.02-rc2, v21.02-rc1, v20.11, v20.11-rc5, v20.11-rc4, v20.11-rc3, v20.11-rc2, v20.11-rc1 |
|
| #
e640362b |
| 21-Sep-2020 |
Lukasz Wojciechowski <l.wojciechow@partner.samsung.com> |
raw/skeleton: allow closing already closed device
This patch return OK code (0) from skeleton_rawdev_close function if firmware is in SKELETON_FW_READY state. Formerly it returned -EINVAL error code
raw/skeleton: allow closing already closed device
This patch return OK code (0) from skeleton_rawdev_close function if firmware is in SKELETON_FW_READY state. Formerly it returned -EINVAL error code.
Returning an error here is troublesome as it disallows proper release of the rawdev. The rte_rawdev_pmd_release function from librte_rawdev library calls drivers' rawdev_close handler and continues execution only in case of errorless call. (see lib/librte_rawdev/rte_rawdev.c:540)
The SKELETON_FW_READY state is reached after creation, reset, unload or close of the device. The device should be ok to be released in such situations.
To reproduce issue fixed by this patch, call rawdev_autotest from dpdk-test app for few times. As the device is not properly released, the next calls will fail.
Fixes: 61c592a8d035 ("raw/skeleton: introduce skeleton rawdev driver") Cc: stable@dpdk.org
Signed-off-by: Lukasz Wojciechowski <l.wojciechow@partner.samsung.com>
show more ...
|
| #
13f8e4a2 |
| 10-Sep-2020 |
Bruce Richardson <bruce.richardson@intel.com> |
rawdev: allow queue config query to return error
The driver APIs for returning the queue default config can fail if the parameters are invalid, or other reasons, so allow them to return error codes
rawdev: allow queue config query to return error
The driver APIs for returning the queue default config can fail if the parameters are invalid, or other reasons, so allow them to return error codes to the rawdev layer and from hence to the app.
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com> Acked-by: Nipun Gupta <nipun.gupta@nxp.com>
show more ...
|
| #
f574ed81 |
| 10-Sep-2020 |
Bruce Richardson <bruce.richardson@intel.com> |
rawdev: add private data size to queue config inputs
The queue setup and queue defaults query functions take a void * parameter as configuration data, preventing any compile-time checking of the par
rawdev: add private data size to queue config inputs
The queue setup and queue defaults query functions take a void * parameter as configuration data, preventing any compile-time checking of the parameters and limiting runtime checks. Adding in the length of the expected structure provides a measure of typechecking, and can also be used for ABI compatibility in future, since ABI changes involving structs almost always involve a change in size.
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com> Acked-by: Nipun Gupta <nipun.gupta@nxp.com>
show more ...
|
| #
8db9dce7 |
| 10-Sep-2020 |
Bruce Richardson <bruce.richardson@intel.com> |
rawdev: add private data size to config inputs
Currently with the rawdev API there is no way to check that the structure passed in via the dev_private pointer in the structure passed to configure AP
rawdev: add private data size to config inputs
Currently with the rawdev API there is no way to check that the structure passed in via the dev_private pointer in the structure passed to configure API is of the correct type - it's just checked that it is non-NULL. Adding in the length of the expected structure provides a measure of typechecking, and can also be used for ABI compatibility in future, since ABI changes involving structs almost always involve a change in size.
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com> Reviewed-by: Rosen Xu <rosen.xu@intel.com> Acked-by: Nipun Gupta <nipun.gupta@nxp.com>
show more ...
|
| #
f150dd88 |
| 10-Sep-2020 |
Bruce Richardson <bruce.richardson@intel.com> |
rawdev: allow drivers to return error from info query
Since we now allow some parameter checking inside the driver info_get() functions, it makes sense to allow error return from those functions to
rawdev: allow drivers to return error from info query
Since we now allow some parameter checking inside the driver info_get() functions, it makes sense to allow error return from those functions to the caller. Therefore we change the driver callback return type from void to int.
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com> Reviewed-by: Rosen Xu <rosen.xu@intel.com> Acked-by: Nipun Gupta <nipun.gupta@nxp.com>
show more ...
|
| #
10b71cae |
| 10-Sep-2020 |
Bruce Richardson <bruce.richardson@intel.com> |
rawdev: add private data size to info query
Currently with the rawdev API there is no way to check that the structure passed in via the dev_private pointer in the dev_info structure is of the correc
rawdev: add private data size to info query
Currently with the rawdev API there is no way to check that the structure passed in via the dev_private pointer in the dev_info structure is of the correct type - it's just checked that it is non-NULL. Adding in the length of the expected structure provides a measure of typechecking, and can also be used for ABI compatibility in future, since ABI changes involving structs almost always involve a change in size.
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com> Reviewed-by: Rosen Xu <rosen.xu@intel.com> Acked-by: Rosen Xu <rosen.xu@intel.com> Acked-by: Nipun Gupta <nipun.gupta@nxp.com>
show more ...
|
|
Revision tags: v20.08, v20.08-rc4, v20.08-rc3, v20.08-rc2, v20.08-rc1 |
|
| #
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 ...
|
|
Revision tags: v20.05, v20.05-rc4, v20.05-rc3, v20.05-rc2, v20.05-rc1, v20.02, v20.02-rc4, v20.02-rc3, v20.02-rc2, v20.02-rc1, v19.11, v19.11-rc4, v19.11-rc3, v19.11-rc2, v19.11-rc1, v19.08, v19.08-rc4, v19.08-rc3, v19.08-rc2, v19.08-rc1 |
|
| #
473c88f9 |
| 05-Jul-2019 |
Bruce Richardson <bruce.richardson@intel.com> |
drivers/raw: remove rawdev from directory names
The ifpga and skeleton rawdev drivers included "rawdev" in their directory names, which was superfluous given that they were in the drivers/raw direct
drivers/raw: remove rawdev from directory names
The ifpga and skeleton rawdev drivers included "rawdev" in their directory names, which was superfluous given that they were in the drivers/raw directory. Shorten the names via this patch.
For meson builds, this will rename the final library .so/.a files produced, but those will be renamed again later via a patch to standardize rawdev names.
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com> Signed-off-by: Thomas Monjalon <thomas@monjalon.net>
show more ...
|