Re: [dpdk-dev] [RFC v2 0/1] add flow action context API
From: Andrey Vesnovaty <hidden>
Date: 2020-06-28 08:44:33
Hi On Fri, Jun 26, 2020 at 2:44 PM Jerin Jacob [off-list ref] wrote:
On Sat, Jun 20, 2020 at 7:02 PM Andrey Vesnovaty [off-list ref] wrote:quoted
Hi, and thanks a lot for your RFC v1 comments. RFC v2 emphasize the intent for sharing the flow action: * The term 'action context' was unclear and replaced with 'shared action'. * RFC v2 subject became 'add flow shared action API'. * all proposed APIs renamed according the above. The new shared action is an independent entity decoupled from any flow while any flow can reuse such an action. Please go over the RFC description, it was almost entirely rewritten. @Jerin Jacob: Thanks again for your comments, it made me admit that v1 description was incomplete & unclear. I hope v2 will be better at least in terms of clarity.The public API and its usage is very clear. Thanks for this RFC.
My pleasure.
I think, RFC v2 still not addressing the concern raised in the http://mails.dpdk.org/archives/dev/2020-June/169296.html. Since MLX hardware has an HW based shared object it is fine to have public API based on that level of abstraction. But at the PMD driver level we need to choose the correct abstraction to support all PMD and support shared object scheme if possible. I purpose to introduce something below or similar int (*action_update) (struct rte_eth_dev *, struct rte_flow *flow, const struct rte_flow_action [], struct rte_flow_error *);
Where this callback suppose to belong (struct rte_flow_ops)? How should it be implemented by PMD? Is it about shared action and if "yes" why there is 'flow' argument?
in addition to: shared_action_create, shared_action_destroy, shared_action_update, shared_action_query Have generic implementation of above, if action_update callback is not NULL.
"is not NULL" -> "is NULL"?
So that, it can work all PMDs and to avoid the duplication of "complex" shared session management code.
Do you mean shared action in use by multiple flows by "shared session"?