FD.io VPP
v21.01.1
Vector Packet Processing
|
Go to the source code of this file.
Data Structures | |
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_MAX_INFLIGHT (CRYPTODEV_NB_CRYPTO_OPS - 1) |
#define | CRYPTODEV_AAD_MASK (CRYPTODEV_NB_CRYPTO_OPS - 1) |
#define | CRYPTODEV_DEQ_CACHE_SZ 32 |
#define | CRYPTODEV_NB_SESSION 10240 |
#define | CRYPTODEV_MAX_AAD_SIZE 16 |
#define | CRYPTODEV_MAX_N_SGL 8 |
maximum number of segments More... | |
#define | foreach_vnet_aead_crypto_conversion |
#define | foreach_cryptodev_link_async_alg |
crypto (alg, cryptodev_alg), hash (alg, digest-size) More... | |
#define | GET_RING_OBJ(r, pos, f) |
Variables | |
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_dp_api.c.
#define CRYPTODEV_AAD_MASK (CRYPTODEV_NB_CRYPTO_OPS - 1) |
Definition at line 43 of file cryptodev_dp_api.c.
#define CRYPTODEV_DEQ_CACHE_SZ 32 |
Definition at line 44 of file cryptodev_dp_api.c.
#define CRYPTODEV_MAX_AAD_SIZE 16 |
Definition at line 46 of file cryptodev_dp_api.c.
#define CRYPTODEV_MAX_INFLIGHT (CRYPTODEV_NB_CRYPTO_OPS - 1) |
Definition at line 42 of file cryptodev_dp_api.c.
#define CRYPTODEV_MAX_N_SGL 8 |
maximum number of segments
Definition at line 47 of file cryptodev_dp_api.c.
#define CRYPTODEV_NB_CRYPTO_OPS 1024 |
Definition at line 41 of file cryptodev_dp_api.c.
#define CRYPTODEV_NB_SESSION 10240 |
Definition at line 45 of file cryptodev_dp_api.c.
#define foreach_cryptodev_link_async_alg |
crypto (alg, cryptodev_alg), hash (alg, digest-size)
Definition at line 61 of file cryptodev_dp_api.c.
#define foreach_vnet_aead_crypto_conversion |
Definition at line 50 of file cryptodev_dp_api.c.
#define GET_RING_OBJ | ( | r, | |
pos, | |||
f | |||
) |
Definition at line 764 of file cryptodev_dp_api.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 78 of file cryptodev_dp_api.c.
Enumerator | |
---|---|
CRYPTODEV_RESOURCE_ASSIGN_AUTO | |
CRYPTODEV_RESOURCE_ASSIGN_UPDATE | |
CRYPTODEV_RESOURCE_ASSIGN_AUTO | |
CRYPTODEV_RESOURCE_ASSIGN_UPDATE |
Definition at line 961 of file cryptodev_dp_api.c.
|
static |
static_always_inline u64 compute_ofs_linked_alg | ( | vnet_crypto_async_frame_elt_t * | fe, |
i16 * | min_ofs, | ||
u32 * | max_end | ||
) |
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 975 of file cryptodev_dp_api.c.
|
static |
|
static |
|
static |
If the device is already started, we reuse it, otherwise configure both the device and queue pair.
Definition at line 1230 of file cryptodev_dp_api.c.
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 int cryptodev_frame_build_sgl | ( | vlib_main_t * | vm, |
enum rte_iova_mode | iova_mode, | ||
struct rte_crypto_vec * | data_vec, | ||
u16 * | n_seg, | ||
vlib_buffer_t * | b, | ||
u32 | size | ||
) |
Definition at line 400 of file cryptodev_dp_api.c.
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 590 of file cryptodev_dp_api.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 451 of file cryptodev_dp_api.c.
|
static |
|
static |
void cryptodev_key_handler | ( | vlib_main_t * | vm, |
vnet_crypto_key_op_t | kop, | ||
vnet_crypto_key_index_t | idx | ||
) |
Definition at line 382 of file cryptodev_dp_api.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 1319 of file cryptodev_dp_api.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 309 of file cryptodev_dp_api.c.
|
static |
Definition at line 225 of file cryptodev_dp_api.c.
|
static |
|
static |
|
static |
clib_error_t* dpdk_cryptodev_init | ( | vlib_main_t * | vm | ) |
|
static |
Definition at line 1037 of file cryptodev_dp_api.c.
|
static |
|
static |
Definition at line 161 of file cryptodev_dp_api.c.
cryptodev_main_t cryptodev_main |
Definition at line 130 of file cryptodev_dp_api.c.
|
static |
(constructor) VLIB_CLI_COMMAND (set_cryptodev_assignment)
Definition at line 1158 of file cryptodev_dp_api.c.
|
static |
(constructor) VLIB_CLI_COMMAND (show_cryptodev_assignment)
Definition at line 1089 of file cryptodev_dp_api.c.