5 #ifndef __INCLUDE_RTE_TABLE_ACTION_H__ 6 #define __INCLUDE_RTE_TABLE_ACTION_H__ 61 #include <rte_compat.h> 136 #define RTE_TABLE_ACTION_LB_KEY_SIZE_MIN 8 139 #define RTE_TABLE_ACTION_LB_KEY_SIZE_MAX 64 142 #define RTE_TABLE_ACTION_LB_TABLE_SIZE 8 184 #define RTE_TABLE_ACTION_TC_MAX 16 187 #define RTE_TABLE_ACTION_TC_QUEUE_MAX 16 460 #ifndef RTE_TABLE_ACTION_MPLS_LABELS_MAX 461 #define RTE_TABLE_ACTION_MPLS_LABELS_MAX 4 711 #ifndef RTE_TABLE_ACTION_SYM_CRYPTO_IV_SIZE_MAX 712 #define RTE_TABLE_ACTION_SYM_CRYPTO_IV_SIZE_MAX (16) 715 #ifndef RTE_TABLE_ACTION_SYM_CRYPTO_AAD_SIZE_MAX 716 #define RTE_TABLE_ACTION_SYM_CRYPTO_AAD_SIZE_MAX (16) 719 #ifndef RTE_TABLE_ACTION_SYM_CRYPTO_IV_OFFSET 720 #define RTE_TABLE_ACTION_SYM_CRYPTO_IV_OFFSET \ 721 (sizeof(struct rte_crypto_op) + sizeof(struct rte_crypto_sym_op)) 816 struct rte_table_action_profile;
827 struct rte_table_action_profile *
861 void *action_config);
885 struct rte_table_action;
903 struct rte_table_action *
957 void *action_params);
995 uint32_t meter_profile_id,
1012 uint32_t meter_profile_id);
1119 uint64_t *timestamp);
1132 struct rte_cryptodev_sym_session *
rte_table_hash_op_hash f_hash
uint32_t n_subports_per_port
struct rte_table_action_mpls_hdr mpls[RTE_TABLE_ACTION_MPLS_LABELS_MAX]
__rte_experimental int rte_table_action_ttl_read(struct rte_table_action *action, void *data, struct rte_table_action_ttl_counters *stats, int clear)
#define RTE_TABLE_ACTION_TC_MAX
uint32_t meter_profile_id
__rte_experimental int rte_table_action_stats_read(struct rte_table_action *action, void *data, struct rte_table_action_stats_counters *stats, int clear)
__rte_experimental struct rte_table_action * rte_table_action_create(struct rte_table_action_profile *profile, uint32_t socket_id)
__rte_experimental struct rte_cryptodev_sym_session * rte_table_action_crypto_sym_session_get(struct rte_table_action *action, void *data)
#define RTE_TABLE_ACTION_LB_TABLE_SIZE
__rte_experimental int rte_table_action_profile_freeze(struct rte_table_action_profile *profile)
struct rte_mempool * mp_create
__rte_experimental int rte_table_action_dscp_table_update(struct rte_table_action *action, uint64_t dscp_mask, struct rte_table_action_dscp_table *table)
#define RTE_TABLE_ACTION_LB_KEY_SIZE_MAX
__rte_experimental int rte_table_action_profile_free(struct rte_table_action_profile *profile)
__rte_experimental int rte_table_action_meter_read(struct rte_table_action *action, void *data, uint32_t tc_mask, struct rte_table_action_mtr_counters *stats, int clear)
__rte_experimental struct rte_table_action_profile * rte_table_action_profile_create(struct rte_table_action_common_config *common)
uint64_t(* rte_table_hash_op_hash)(void *key, void *key_mask, uint32_t key_size, uint64_t seed)
uint32_t n_pipes_per_subport
__rte_experimental int rte_table_action_meter_profile_add(struct rte_table_action *action, uint32_t meter_profile_id, struct rte_table_action_meter_profile *profile)
__rte_experimental int rte_table_action_meter_profile_delete(struct rte_table_action *action, uint32_t meter_profile_id)
rte_table_action_encap_type
__rte_experimental int rte_table_action_profile_action_register(struct rte_table_action_profile *profile, enum rte_table_action_type type, void *action_config)
#define RTE_TABLE_ACTION_MPLS_LABELS_MAX
rte_table_action_meter_algorithm
__rte_experimental int rte_table_action_time_read(struct rte_table_action *action, void *data, uint64_t *timestamp)
__rte_experimental int rte_table_action_apply(struct rte_table_action *action, void *data, enum rte_table_action_type type, void *action_params)
__rte_experimental int rte_table_action_table_params_get(struct rte_table_action *action, struct rte_pipeline_table_params *params)
struct rte_mempool * mp_init
__rte_experimental int rte_table_action_free(struct rte_table_action *action)
struct rte_crypto_sym_xform * xform