FD.io VPP
v20.09-64-g4f7b92f0a
Vector Packet Processing
|
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 824 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 838 of file cryptodev.c.
|
static |
|
static |
|
static |
If the device is already started, we reuse it, otherwise configure both the device and queue pair.
Definition at line 1089 of file cryptodev.c.
|
static |
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 581 of file cryptodev.c.
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 469 of file cryptodev.c.
static_always_inline rte_iova_t cryptodev_get_iova | ( | clib_pmalloc_main_t * | pm, |
enum rte_iova_mode | mode, | ||
void * | data | ||
) |
Definition at line 419 of file cryptodev.c.
static_always_inline cryptodev_op_t* cryptodev_get_ring_head | ( | struct rte_ring * | ring | ) |
|
static |
Definition at line 1229 of file cryptodev.c.
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.
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 1200 of file cryptodev.c.
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.
|
static |
Definition at line 244 of file cryptodev.c.
|
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 431 of file cryptodev.c.
clib_error_t* dpdk_cryptodev_init | ( | vlib_main_t * | vm | ) |
|
static |
Definition at line 896 of file cryptodev.c.
|
static |
|
static |
Definition at line 180 of file cryptodev.c.
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 1017 of file cryptodev.c.
|
static |
(constructor) VLIB_CLI_COMMAND (show_cryptodev_assignment)
Definition at line 948 of file cryptodev.c.