[PATCH v7] ethdev: add template table resize API
Etelson, Gregory
getelson at nvidia.com
Thu Feb 15 06:41:16 CET 2024
Hello Ferruh,
<...>
>>>
>>> Syntax above is odd, why not move parenthesis to first line.
>>
>> Agree that's odd style.
>> DPDK prefers that way.
>> Please check rte_flow_driver.h::rte_flow.ops.
>>
>
> True that is also odd but at least it is function pointers in a struct,
> but this is regular function deceleration, why not:
> ```
> bool
> rte_flow_template_table_resizable(__rte_unused uint16_t port_id,
> const struct rte_flow_template_table_attr *tbl_attr);
> ```
>
will change in the next patch update.
<...>
> Either it or application needs to manage it. Agree that application can
> call update() on all flows is easier for app, that is why I asked for
> this clarification.
>
> But still it is different than API definition making it mandatory to
> call for new flows.
>
> What about something like, although it is a little longer:
> ```
> Update flow for the new template table configuration after table resize.
>
> Should be called for rules created before table resize. If called for
> rules crated after table resize, API should return success, so
> application is free to call this API for all flows.
> ```
>
>
That's very good.
I'll use it in the next patch update.
<...>
>>
>> A different error is good.
>> What about EBUSY ?
>>
>
> I don't know, can be EBUSY or EAGAIN.
> Or we can overload EEXIST as there are existing not updated flows.
>
According to errno(3):
EAGAIN Resource temporarily unavailable
EBUSY Device or resource busy
EEXIST File exists
UBUSY fits the context.
More information about the dev
mailing list