| rte_swx_table_selector.h(3) | Library Functions Manual | rte_swx_table_selector.h(3) |
rte_swx_table_selector.h
#include <stdint.h>
#include <rte_compat.h>
#include 'rte_swx_table.h'
struct rte_swx_table_selector_params
struct rte_swx_table_selector_member
struct rte_swx_table_selector_group
RTE_TAILQ_HEAD (rte_swx_table_selector_member_list,
rte_swx_table_selector_member)
__rte_experimental uint64_t rte_swx_table_selector_footprint_get
(uint32_t n_groups_max, uint32_t n_members_per_group_max)
__rte_experimental uint64_t rte_swx_table_selector_mailbox_size_get
(void)
__rte_experimental void * rte_swx_table_selector_create (struct
rte_swx_table_selector_params *params, struct
rte_swx_table_selector_group **groups, int numa_node)
__rte_experimental int rte_swx_table_selector_group_set (void *table,
uint32_t group_id, struct rte_swx_table_selector_group *group)
__rte_experimental int rte_swx_table_selector_select (void *table, void
*mailbox, uint8_t **group_id_buffer, uint8_t **selector_buffer, uint8_t
**member_id_buffer)
__rte_experimental void rte_swx_table_selector_free (void *table)
RTE SWX Selector Table
Selector table interface.
Definition in file rte_swx_table_selector.h.
List of group members.
Selector table memory footprint get
Parameters
Returns
Selector table mailbox size get
The mailbox is used to store the context of a select operation that is in progress and it is passed as a parameter to the select operation. This allows for multiple concurrent select operations into the same table.
Returns
Selector table create
Parameters
Returns
Group set
Parameters
Returns
Selector table select
This operation selects a member from the given group based on a hasing scheme.
Multiple invocations of this function may be required in order to complete a single select operation for a given table and a given group ID. The completion of the operation is flagged by a return value of 1; in case of a return value of 0, the function must be invoked again with exactly the same arguments.
The mailbox argument is used to store the context of each on-going operation. The mailbox mechanism allows for multiple concurrent select operations into the same table.
The typical reason an implementation may choose to split the operation into multiple steps is to hide the latency of the inherent memory read operations: before a read operation with the source data likely not in the CPU cache, the source data prefetch is issued and the operation is postponed in favor of some other unrelated work, which the CPU executes in parallel with the source data being fetched into the CPU cache; later on, the operation is resumed, this time with the source data likely to be read from the CPU cache with no CPU pipeline stall, which significantly improves the operation performance.
Parameters
Returns
Selector table free
Parameters
Generated automatically by Doxygen for DPDK from the source code.
| Version 24.11.3 | DPDK |