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>
DPDK is a set of libraries and drivers for fast packet processing. It supports many processor architectures and both FreeBSD and Linux. The DPDK uses the Open Source BSD-3-Clause license for the core libraries and drivers. The kernel components are GPL-2.0 licensed. Please check the doc directory for release notes, API documentation, and sample application information. For questions and usage discussions, subscribe to: users@dpdk.org Report bugs and issues to the development mailing list: dev@dpdk.org
Description
Languages
C
99.1%
Meson
0.5%
Python
0.2%
Shell
0.1%