[PATCH v2] ethdev: add template table resize API
Thomas Monjalon
thomas at monjalon.net
Tue Feb 6 23:31:36 CET 2024
31/01/2024 10:59, Gregory Etelson:
> --- a/lib/ethdev/rte_flow.h
> +++ b/lib/ethdev/rte_flow.h
> #define RTE_FLOW_TABLE_SPECIALIZE_TRANSFER_VPORT_ORIG RTE_BIT32(1)
> +/**
> + * Specialize table for resize.
> + */
> +#define RTE_FLOW_TABLE_SPECIALIZE_RESIZABLE_TABLE RTE_BIT32(2)
I'm not sure about the repeating "TABLE" at the end of this flag name.
[...]
> +/**
> + * @warning
> + * @b EXPERIMENTAL: this API may change without prior notice.
> + *
> + * Query if a table can be resized
s/if/whether/
A dot is missing.
> + *
> + * @param port_id
> + * Port identifier of Ethernet device.
> + * @param tbl_attr
> + * Template table
Every lines should end with a dot in Doxygen for consistency.
> + *
> + * @return
> + * True if the table can be resized.
> + */
> +static __rte_always_inline bool
Why is it inline?
In general we avoid inline except for few performance sensitive ones.
> +rte_flow_table_resizable(__rte_unused uint16_t port_id,
> + const struct rte_flow_template_table_attr *tbl_attr)
> +{
> + return (tbl_attr->specialize &
> + RTE_FLOW_TABLE_SPECIALIZE_RESIZABLE_TABLE) != 0;
> +}
[...]
> + # added in 24.03
> + rte_flow_template_table_resize;
> + rte_flow_async_update_resized;
> + rte_flow_template_table_resize_complete;
I like the idea of these 3 new functions.
The scenario should be described in doc/guides/prog_guide/rte_flow.rst
More information about the dev
mailing list