[dpdk-dev] [Bug 105] Cannot create crypto_openssl after vdev_uninit
bugzilla at dpdk.org
bugzilla at dpdk.org
Fri Nov 2 18:47:48 CET 2018
https://bugs.dpdk.org/show_bug.cgi?id=105
Bug ID: 105
Summary: Cannot create crypto_openssl after vdev_uninit
Product: DPDK
Version: 18.08
Hardware: x86
OS: Linux
Status: CONFIRMED
Severity: normal
Priority: Normal
Component: cryptodev
Assignee: dev at dpdk.org
Reporter: sunnylandh at gmail.com
Target Milestone: ---
Overview:
If any created crypto_openssl device has been uninitialized, new crypto_openssl
device cannot be created.
Steps to Reproduce:
1) Compile this snippet with command line:
gcc -m64 -O3 -march=native -o x x.c -I/usr/local/include/dpdk -ldpdk
```
#include <inttypes.h>
#include <stdio.h>
#include <rte_config.h>
#include <rte_bus_vdev.h>
#include <rte_eal.h>
#include <rte_errno.h>
#define WANT_UNINIT
int main(int argc, char** argv) {
int res = rte_eal_init(argc, argv);
if (res < 0) {
printf("rte_eal_init(argc, argv) %d\n", rte_errno);
return 3;
}
res = rte_vdev_init("crypto_openssl_0", "");
if (res != 0) {
printf("rte_vdev_init(\"crypto_openssl_0\", \"\") %d\n", res);
return 4;
}
#ifdef WANT_UNINIT
res = rte_vdev_uninit("crypto_openssl_0");
if (res != 0) {
printf("rte_vdev_uninit(\"crypto_openssl_0\") %d\n", res);
return 5;
}
#endif // WANT_UNINIT
res = rte_vdev_init("crypto_openssl_1", "");
if (res != 0) {
printf("rte_vdev_init(\"crypto_openssl_1\", \"\") %d\n", res);
return 6;
}
printf("OK\n");
return 0;
}
```
2) Execute the program with this command line:
sudo ./x -d /usr/local/lib/librte_pmd_openssl.so
Actual Results:
The program fails to create "crypto_openssl_1" device, and prints the following
log output:
```
EAL: Detected 24 lcore(s)
EAL: Detected 2 NUMA nodes
EAL: Multi-process socket /var/run/dpdk/rte/mp_socket
EAL: Probing VFIO support...
CRYPTODEV: [crypto_openssl] - Creating cryptodev crypto_openssl_0
CRYPTODEV: [crypto_openssl] - Initialisation parameters - name:
crypto_openssl_0,socket id: 0, max queue pairs: 8
CRYPTODEV: [crypto_openssl] Closing crypto device crypto_openssl_0
CRYPTODEV: [crypto_openssl] - Creating cryptodev crypto_openssl_1
CRYPTODEV: [crypto_openssl] - Initialisation parameters - name:
crypto_openssl_1,socket id: 0, max queue pairs: 8
CRYPTODEV: rte_cryptodev_pmd_create() line 113: [crypto_openssl] Failed to
allocate crypto device for crypto_openssl_1
cryptodev_openssl_create() line 2102: failed to create cryptodev vdev
cryptodev_openssl_create() line 2129: driver : create failed
rte_vdev_init("crypto_openssl_1", "") -14
```
Expected Results:
The program successfully creates crypto_openssl_1 device, and prints "OK".
Build Date & Hardware:
DPDK release 18.08 installed from tarball.
gcc version 5.4.0 20160609 (Ubuntu 5.4.0-6ubuntu1~16.04.10)
Intel(R) Xeon(R) CPU E5-2640 0 @ 2.50GHz
Additional Builds and Platforms: not tested.
Additional Information:
The program completes successfully if commenting out `#define WANT_UNINIT`
line.
--
You are receiving this mail because:
You are the assignee for the bug.
More information about the dev
mailing list