[PATCH] ethdev: add template table resize API

Etelson, Gregory getelson at nvidia.com
Mon Jan 29 16:08:50 CET 2024


Hello Ferruh,

>
> Hi Gregory, Ori,
>
> Why we need three separate APIs,
> rte_flow_template_table_resize
> rte_flow_async_update_resized
> rte_flow_template_table_resize_complete
>
> Why not 'rte_flow_template_table_resize()' update existing flows and
> release resources related to the original tables automatically?
>


Template table resize API allows to add new flows immediately after 
rte_flow_template_table_resize completed.
A multi-threaded application can add new and update old flows simultaneously.

A single resize-and-update API would require to lock PMD for entire operation.
For application with 1e6 flows doubling a table would end up with 
considerable down time.

The rte_flow_template_table_resize_complete was added for PMDs that cannot 
differentiate flows created before and after table resize.

Regards,
Gregory


More information about the dev mailing list