![]() |
FD.io VPP
v21.01.1
Vector Packet Processing
|
Include dependency graph for cryptodev.c:Go to the source code of this file.
Data Structures | |
| struct | cryptodev_op_t |
| struct | cryptodev_key_t |
| struct | cryptodev_inst_t |
| struct | cryptodev_numa_data_t |
| struct | cryptodev_engine_thread_t |
| struct | cryptodev_main_t |
Macros | |
| #define | always_inline static inline |
| #define | CRYPTODEV_NB_CRYPTO_OPS 1024 |
| #define | CRYPTODEV_NB_SESSION 10240 |
| #define | CRYPTODEV_DEF_DRIVE crypto_aesni_mb |
| #define | CRYPTODEV_IV_OFFSET (offsetof (cryptodev_op_t, iv)) |
| #define | CRYPTODEV_AAD_OFFSET (offsetof (cryptodev_op_t, aad)) |
| #define | foreach_vnet_aead_crypto_conversion |
| #define | foreach_cryptodev_link_async_alg |
| crypto (alg, cryptodev_alg), hash (alg, digest-size) More... | |
| #define | foreach_vnet_crypto_status_conversion |
Variables | |
| static const vnet_crypto_op_status_t | cryptodev_status_conversion [] |
| cryptodev_main_t | cryptodev_main |
| static vlib_cli_command_t | show_cryptodev_assignment |
| (constructor) VLIB_CLI_COMMAND (show_cryptodev_assignment) More... | |
| static vlib_cli_command_t | set_cryptodev_assignment |
| (constructor) VLIB_CLI_COMMAND (set_cryptodev_assignment) More... | |
| #define always_inline static inline |
Definition at line 36 of file cryptodev.c.
| #define CRYPTODEV_AAD_OFFSET (offsetof (cryptodev_op_t, aad)) |
Definition at line 46 of file cryptodev.c.
| #define CRYPTODEV_DEF_DRIVE crypto_aesni_mb |
Definition at line 43 of file cryptodev.c.
| #define CRYPTODEV_IV_OFFSET (offsetof (cryptodev_op_t, iv)) |
Definition at line 45 of file cryptodev.c.
| #define CRYPTODEV_NB_CRYPTO_OPS 1024 |
Definition at line 41 of file cryptodev.c.
| #define CRYPTODEV_NB_SESSION 10240 |
Definition at line 42 of file cryptodev.c.
| #define foreach_cryptodev_link_async_alg |
crypto (alg, cryptodev_alg), hash (alg, digest-size)
Definition at line 60 of file cryptodev.c.
| #define foreach_vnet_aead_crypto_conversion |
Definition at line 49 of file cryptodev.c.
| #define foreach_vnet_crypto_status_conversion |
Definition at line 77 of file cryptodev.c.
| enum cryptodev_op_type_t |
| Enumerator | |
|---|---|
| CRYPTODEV_OP_TYPE_ENCRYPT | |
| CRYPTODEV_OP_TYPE_DECRYPT | |
| CRYPTODEV_N_OP_TYPES | |
| CRYPTODEV_OP_TYPE_ENCRYPT | |
| CRYPTODEV_OP_TYPE_DECRYPT | |
| CRYPTODEV_N_OP_TYPES | |
Definition at line 102 of file cryptodev.c.
| Enumerator | |
|---|---|
| CRYPTODEV_RESOURCE_ASSIGN_AUTO | |
| CRYPTODEV_RESOURCE_ASSIGN_UPDATE | |
| CRYPTODEV_RESOURCE_ASSIGN_AUTO | |
| CRYPTODEV_RESOURCE_ASSIGN_UPDATE | |
Definition at line 823 of file cryptodev.c.
|
static |
|
static |
| static_always_inline int cryptodev_assign_resource | ( | cryptodev_engine_thread_t * | cet, |
| u32 | cryptodev_inst_index, | ||
| cryptodev_resource_assign_op_t | op | ||
| ) |
assign a cryptodev resource to a worker.
| cet | the worker thread data |
| cryptodev_inst_index | if op is "ASSIGN_AUTO" this param is ignored. |
| op | the assignment method. |
Definition at line 837 of file cryptodev.c.
Here is the call graph for this function:
Here is the caller graph for this function:
|
static |
|
static |
|
static |
If the device is already started, we reuse it, otherwise configure both the device and queue pair.
Definition at line 1091 of file cryptodev.c.
Here is the call graph for this function:
Here is the caller graph for this function:| static_always_inline int cryptodev_enqueue_gcm_aad_12_dec | ( | vlib_main_t * | vm, |
| vnet_crypto_async_frame_t * | frame | ||
| ) |
| static_always_inline int cryptodev_enqueue_gcm_aad_12_enc | ( | vlib_main_t * | vm, |
| vnet_crypto_async_frame_t * | frame | ||
| ) |
| static_always_inline int cryptodev_enqueue_gcm_aad_8_dec | ( | vlib_main_t * | vm, |
| vnet_crypto_async_frame_t * | frame | ||
| ) |
| static_always_inline int cryptodev_enqueue_gcm_aad_8_enc | ( | vlib_main_t * | vm, |
| vnet_crypto_async_frame_t * | frame | ||
| ) |
| static_always_inline int cryptodev_enqueue_linked_alg_dec | ( | vlib_main_t * | vm, |
| vnet_crypto_async_frame_t * | frame | ||
| ) |
| static_always_inline int cryptodev_enqueue_linked_alg_enc | ( | vlib_main_t * | vm, |
| vnet_crypto_async_frame_t * | frame | ||
| ) |
| static_always_inline vnet_crypto_async_frame_t* cryptodev_frame_dequeue | ( | vlib_main_t * | vm, |
| u32 * | nb_elts_processed, | ||
| u32 * | enqueue_thread_idx | ||
| ) |
| static_always_inline int cryptodev_frame_gcm_enqueue | ( | vlib_main_t * | vm, |
| vnet_crypto_async_frame_t * | frame, | ||
| cryptodev_op_type_t | op_type, | ||
| u8 | aad_len | ||
| ) |
Definition at line 580 of file cryptodev.c.
Here is the call graph for this function:
Here is the caller graph for this function:| static_always_inline int cryptodev_frame_linked_algs_enqueue | ( | vlib_main_t * | vm, |
| vnet_crypto_async_frame_t * | frame, | ||
| cryptodev_op_type_t | op_type | ||
| ) |
Definition at line 468 of file cryptodev.c.
Here is the call graph for this function:
Here is the caller graph for this function:| static_always_inline rte_iova_t cryptodev_get_iova | ( | clib_pmalloc_main_t * | pm, |
| enum rte_iova_mode | mode, | ||
| void * | data | ||
| ) |
Definition at line 418 of file cryptodev.c.
Here is the call graph for this function:
Here is the caller graph for this function:| static_always_inline cryptodev_op_t* cryptodev_get_ring_head | ( | struct rte_ring * | ring | ) |
|
static |
| void cryptodev_key_handler | ( | vlib_main_t * | vm, |
| vnet_crypto_key_op_t | kop, | ||
| vnet_crypto_key_index_t | idx | ||
| ) |
Definition at line 401 of file cryptodev.c.
Here is the call graph for this function:
Here is the caller graph for this function:| static_always_inline void cryptodev_mark_frame_err_status | ( | vnet_crypto_async_frame_t * | f, |
| vnet_crypto_op_status_t | s | ||
| ) |
|
static |
Definition at line 1174 of file cryptodev.c.
Here is the call graph for this function:
Here is the caller graph for this function:| static_always_inline void cryptodev_sess_handler | ( | vlib_main_t * | vm, |
| vnet_crypto_key_op_t | kop, | ||
| vnet_crypto_key_index_t | idx, | ||
| u32 | aad_len | ||
| ) |
Definition at line 328 of file cryptodev.c.
Here is the call graph for this function:
Here is the caller graph for this function:
|
static |
Definition at line 244 of file cryptodev.c.
Here is the call graph for this function:
Here is the caller graph for this function:
|
static |
|
static |
|
static |
| static_always_inline void cryptodev_validate_mbuf_chain | ( | vlib_main_t * | vm, |
| struct rte_mbuf * | mb, | ||
| vlib_buffer_t * | b | ||
| ) |
< last mbuf
Definition at line 430 of file cryptodev.c.
Here is the call graph for this function:
Here is the caller graph for this function:| clib_error_t* dpdk_cryptodev_init | ( | vlib_main_t * | vm | ) |
|
static |
Definition at line 895 of file cryptodev.c.
Here is the call graph for this function:
Here is the caller graph for this function:
|
static |
|
static |
Definition at line 180 of file cryptodev.c.
Here is the call graph for this function:
Here is the caller graph for this function:| cryptodev_main_t cryptodev_main |
Definition at line 149 of file cryptodev.c.
|
static |
Definition at line 85 of file cryptodev.c.
|
static |
(constructor) VLIB_CLI_COMMAND (set_cryptodev_assignment)
Definition at line 1016 of file cryptodev.c.
|
static |
(constructor) VLIB_CLI_COMMAND (show_cryptodev_assignment)
Definition at line 947 of file cryptodev.c.