[dpdk-dev] [PATCH v2 0/5] cryptodev: hide internal structures
Ananyev, Konstantin
konstantin.ananyev at intel.com
Fri Oct 15 20:38:55 CEST 2021
Hi Akhil,
> Structures rte_cryptodev and rte_cryptodev_data are not
> supposed to be directly used by the application. These
> are made public as they are used by inline datapath
> public APIs.
> This patchset, creates a new rte_cryptodev_core.h file
> which helps in defining a data structure to hold datapath
> APIs in a flat array based on the device identifier which
> is filled by the PMD.
>
> Similar series for ethdev and eventdev are also floated on ML.
> https://patchwork.dpdk.org/project/dpdk/list/?series=19428
> https://patchwork.dpdk.org/project/dpdk/list/?series=19405
>
> changes in v2: align with the latest versions of above series.
Just to let you know this patch set causes to seg-fault ipsec-secgw:
examples/ipsec-secgw/test/run_test.sh -46m
...
[23695833.390785] dpdk-ipsec-secg[2491066]: segfault at 0 ip 0000564325730963 sp 00007fffb9111d00 error 4 in dpdk-ipsec-secgw[564324df0000+134d000]
[23695833.390791] Code: 28 5b 5d 41 5c 41 5d 41 5e 41 5f c3 0f 1f 00 4c 8d 04 cd 00 00 00 00 49 89 ce 4c 89 e7 4a 8d 34 00 48 8b 46 08 48 89 74 24 18 <48> 8b 08 48 89 88 80 00 00 00 f0 83 44 24 80 00 4c 8b 2e 4d 85 ed
So far, I didn't dig into it any further.
Will have a closer look at Monday.
Konstantin
>
> Akhil Goyal (5):
> cryptodev: separate out internal structures
> cryptodev: allocate max space for internal qp array
> cryptodev: move inline APIs into separate structure
> cryptodev: update fast path APIs to use new flat array
> cryptodev: move device specific structures
>
> drivers/crypto/aesni_mb/rte_aesni_mb_pmd.c | 1 -
> drivers/crypto/ccp/ccp_dev.h | 2 +-
> drivers/crypto/cnxk/cn10k_ipsec.c | 2 +-
> drivers/crypto/cnxk/cn9k_ipsec.c | 2 +-
> .../crypto/cnxk/cnxk_cryptodev_capabilities.c | 2 +-
> drivers/crypto/cnxk/cnxk_cryptodev_sec.c | 2 +-
> drivers/crypto/nitrox/nitrox_sym_reqmgr.c | 2 +-
> drivers/crypto/octeontx/otx_cryptodev.c | 1 -
> .../crypto/octeontx/otx_cryptodev_hw_access.c | 2 +-
> .../crypto/octeontx/otx_cryptodev_hw_access.h | 2 +-
> drivers/crypto/octeontx/otx_cryptodev_ops.h | 2 +-
> .../crypto/octeontx2/otx2_cryptodev_mbox.c | 2 +-
> drivers/crypto/scheduler/scheduler_failover.c | 2 +-
> .../crypto/scheduler/scheduler_multicore.c | 2 +-
> .../scheduler/scheduler_pkt_size_distr.c | 2 +-
> .../crypto/scheduler/scheduler_roundrobin.c | 2 +-
> drivers/event/cnxk/cnxk_eventdev.h | 2 +-
> drivers/event/dpaa/dpaa_eventdev.c | 2 +-
> drivers/event/dpaa2/dpaa2_eventdev.c | 2 +-
> drivers/event/octeontx/ssovf_evdev.c | 2 +-
> .../event/octeontx2/otx2_evdev_crypto_adptr.c | 2 +-
> lib/cryptodev/cryptodev_pmd.c | 51 +++
> lib/cryptodev/cryptodev_pmd.h | 82 +++-
> lib/cryptodev/meson.build | 4 +-
> lib/cryptodev/rte_cryptodev.c | 50 ++-
> lib/cryptodev/rte_cryptodev.h | 367 +++++++-----------
> lib/cryptodev/rte_cryptodev_core.h | 62 +++
> lib/cryptodev/version.map | 7 +-
> 28 files changed, 398 insertions(+), 265 deletions(-)
> create mode 100644 lib/cryptodev/rte_cryptodev_core.h
>
> --
> 2.25.1
More information about the dev
mailing list